引言
- 本系列作为一个dockers使用的总结,不是从讲解原理开始的故仅供使用的时候参考。
- 本文主要详细介绍了启动容器时候常用的指令参数以及参数的搭配使用作用。
正文
关于创建容器(docker run)的一些常用参数介绍清单(个人常用):
- a(--attach list):可选 STDIN/STDOUT/STDERR (标准输入标准输出标准error)三项,这个主要是用于容器日志的输入输出方便查看容器运行状况的
docker run -a stdout -a stderr 容器名称
- d(--detach): 可以在后台运行容器,并返回容器ID
- i(--interactive): 以交互模式运行容器,通常与 -t 同时使用
- t(--tty): 为容器重新分配一个伪输入终端,通常与 -i 同时使用
-it的效果就是运行容器后会生成一个容器内部的伪终端,可以对容器进行操作
- h(--hostname string): 指定容器的hostname
- e(--env list): 设置容器环境变量,个人总会把这个环境变量和虚拟环境弄混,这个就是一个配置参数,比如设置mysql的时候可以通过-e参数指定单机版还是集群版
- m(--memory bytes): 设置容器使用内存最大值
- rm 当容器退出时自动移除这个容器,算是创建了一个一次性容器
- name: 为容器起一个好记忆的名称方便查找
- p: 指定宿主机与容器映射端口
- v: 指定容器路径与宿主机路径的路径映射
- 作用1:一般来说在容器中我们都是root权限,映射后我们可以操作一些宿主机中没有权限的文件
- 作用2:比如使用pycharm软件远程连接服务器代码的时候,设置好映射就不用改完服务器上的代码再改容器里面的代码了。
- dns : 指定容器使用的DNS服务器,默认和宿主一致
- shm-size:动态扩展内存大小的(有时候容器需要限制其使用资源的大小)
- gpus='"device=x"'指定容器使用第几块GPU
个人常用docker指令
docker exec -it 容器名 /bin/bash
- /bin/bash就表示启动容器后启动bash,docker后台运行的话必须运行一个进程,否则容器就会退出,在这里表示启动容器后启动bash。
- exec的作用是在一个运行状态下的容器里执行命令,通过exec命令能让在容器里和宿主机上一样执行命令(貌似容器指令时有一个参数有同样的效果,不过这个好用就这样啦)
docker run -it --name xxx -p 5701:5701 --shm-size=32G --gpus='"device=3"' -v /宿主机路径:/容器路径 镜像下载地址 /bin/bash
- 其他的想起来继续补充