docker学习——操作docker容器

2019-01-19  本文已影响0人  程序猿小小白

一:创建容器

docker create [options] 镜像名 [command] [arg ....]

(1)与容器运行模式相关的选项

           -a:是否绑定到标准输入,输出和错误

           -d:是否在后台运行,默认为否

           --detach-key=“ ”:从attch模式退出的快捷键

          --expose=[ ]:指定容器会暴露出来的端口或端口范围

          --group-add=[ ]:运行容器的用户组

          -i:保持标准输入打开

          --ipc=“ ”:容器IPC命名空间,可以为其他容器或主机

         --isolation=“default”:容器使用的隔离机制

         --log-opt=[ ]:传递给日志驱动的选项

        --log-driver=“json-file”:指定容器日志驱动的类型

       --net=“bridge”:指定容器的网络模式

       --net-alias=[ ]:容器在网络中的别名

       -P:通过NAT机制将容器标记暴露的端口自动映射到本地主机的临时端口

       -p:指定如何映射到本地主机端口

      --pid=host:容器的pid命名空间

      --userns=“ ”:启动userns-remap时配置用户命名空间模式

      --restart=“no”:容器重启策略

     --rm=true|false:容器退出后是否自动删除,不能跟-d同时使用

     -t:是否分配一个伪终端,默认为false

    --tmpfs=[ ]:挂在临时文件系统到容器

    -v | --volume[=[[HOS_DIR:] CONTAINER_DIR [:OPTIONS]]]:挂在主机上的文件卷到容器内

    --volume-driver=“ ”:挂载文件卷的驱动类型

    --volumes-from=[ ]:从其他容器挂载卷

    -w:容器内的默认工作目录

(2)与容器环境和配置相关的选项

       --add-host=[ ]:在容器内添加一个主机名到IP地址放入映射关系(/etc/hosts文件)

      --device=[ ]:映射物理机的设备到容器内

      --dns-search=[ ]:DNS搜索域

      --dns=[ ]:自定义的dns服务器

       -e:指定容器内环境变量

      --env-file=[ ]:从文件中读取环境变量到容器内

      -h:指定容器内的主机名

      --ip=“ ”:指定容器的IPv4地址

     --ip6=“ ”:指定容器的IPv6地址

     --link=[<name or id>:alias]:链接到其他容器

     --mac-address=“ ”:指定容器的mac地址

     --name=“ ”:指定容器的别名

(3)与容器资源限制和安全保护相关的选项

     -l:以键值对方式指定容器的标签信息

     --label-file=[ ]:从文件中读取标签信息

二:启动容器

docker start 容器名

三:新建并启动容器

docker run [options] 镜像名 [命令] [arg ....]

常见的错误代码:

125:Docker daemon 执行出错,例如:指定了不对的参数

126:所指定的命令无法执行,例如:权限出错

127:容器内命令无法找到

四:守护态运行

    -d

五:终止容器

docker stop [options] 容器名 ....

重启容器:docker restart [options] 容器名

六:进入容器

(1)attach命令

docker attach [options] 容器名

       --detach-key[=[ ]]:指定退出attach模式的快捷键序列,默认是ctrl+p,ctrl+q

       --no-stdin=true|false:是否关闭标准输入,默认是保持打开

       --sig-proxy=true|false:是否代理收到的系统信号应用进程,默认为true

(2)exec命令

docker exec [options] 容器名 command [arg ....]

       -i:打开标准输入接受用户输入命令,默认是false

      --privileged=true|false:是否给执行命令以高权限,默认为false

      -t:分配的终端

     -u:执行命令的用户名或ID

七:删除容器

docker rm [options] 容器名

     -f:强制删除

     -l:删除容器的链接,但保留容器

     -v:删除容器挂载的数据卷

八:导入和导出容器

(1)导出容器

docker export [options] 容器名

      -o:指定导出的tar文件名

(2)导入容器

docker import [options] 容器名

     -c:应用docker指令创建镜像,即在导入的同时执行对容器进行修改的Dockkerfile指令

    -m:提交时的说明文字

上一篇下一篇

猜你喜欢

热点阅读