zoukankan      html  css  js  c++  java
  • docker

    1. docker 的坑

    /etc/resolv.conf,还有/etc/hostname/etc/hosts等文件都是通过挂载方式挂载到容器中来的。所以想要用sed对他们进行修改,都会遇到这样的问题。

    这几个文件不能mv,不能sed , sed 的实质是生成新的文件 ,

    解决: echo "$(sed 's/192.168.1.1/192.168.1.254/g' /etc/resolv.conf)" > /etc/resolv.conf

    2. docker 服务 启动报错  如下

    dockerd: Error starting daemon: Error initializing network controller: list bridge addresses failed: no available network

    解决办法:

    sudo ip link add name docker0 type bridge
    sudo ip addr add dev docker0 172.17.42.1/16    

    手动创建 docker0 桥接

    原因: 查路由,发现 有如下一条路由

    172.16.0.0/12 via 119.36.161.129 dev bond0

    因为docker 服务在启动时 创建docker0  网桥时  ,除了 添加IP ,还会添加路由, 但因为有了一个路由,所以 新路由创建失败,因此  创建桥接也失败, 

    注: docker0 正常是由 docker 服务在启动时 创建的 。

    3. docker  服务启动命令 

    systemctl status docker -l 系统调用  

    如看不出报错,可手动执行  docker 服务的启动命令,看 报错输出。

    启动服务配置文件 /usr/lib/systemd/system/docker.server   

    docker  相关命令:

    docker exec -it container-name /bin/bash   进入容器,并可执行命令。

    docker attach name, 也可连接容器,但不能执行命令,只能查看容器输出,类似于docker logs -f name  查看容器输出。

    docker info  主要宿主机里创建的容器信息,镜像等信息。

    docker inspect name  查看某一个容器的详细信息。

    docker stats 查看容器使用资源情况

    docker pull images 

    docker start container

    docker stop container 

    docker rm container

    docker rmi images

    docker login  -u user -p passwd

    docker run 创建container

    在线更新容器内存 和 cpu  使用量

    docker update  name   --memory-swap=36g  -m=36g   --cpuset-cpus=1 or  24  等等  不加就时不限制

  • 相关阅读:
    @Autowired 注解是如何实现的?
    工作 3 年的同事不懂 isEmpty 和 isBlank 的区别,我真是醉了。。
    4 个单词,谷歌返回 16 个 SQL 注入漏洞...
    MySQL 更新不成功,事务问题搞清楚了吗?
    Python Web应用如何部署?
    mapbox加载postgis矢量切片
    tile2lon:地图瓦片编号与经纬度的换算关系
    shp2pgsql:将shapefile导入postgis数据库
    postgreSQL表添加ID自增列
    postgreSQL连接配置
  • 原文地址:https://www.cnblogs.com/brucewhite/p/10901018.html
Copyright © 2011-2022 走看看