docker容器创建及操作命令
Jeff的技术栈 人气:3docker容器简介
容器就是对外提供服务的一个实例。
容器启动的必要条件:容器内至少有一个进程运行在前台
1、创建容器
# 格式 docker run [参数] [镜像名称] [运行容器的启动命令] # 参数 -d : 以守护进程的方式运行一个容器 docker run -d [镜像名称] [cmd] --name : 指定容器的名称 docker run -d --name [容器名称] [镜像的名称] [cmd] -p : 指定端口映射 docker run -d -p 宿主主机端口:容器内端口 [镜像名称] [cmd] -P :随机端口映射 docker run -d -P [镜像名称] [cmd] -i : 打开标准输出 -t : 创建一个伪终端 docker run -it [镜像名称] [cmd] -v : 挂载目录到容器中 docker run -v 宿主主机目录:容器内目录 [镜像名称] [cmd] --rm : 容器生命周期结束时立即删除 docker run --rm [镜像名称] [cmd] -e : 在容器中创建一个环境变量 docker run -e NAME=Centos -d [镜像名称] [cmd] --link : 连接上一个容器,实现网络互通 docker run --link 被连接的容器的名称:连接别名 [镜像名称] [cmd] -h : 设置容器主机名 docker run -h "主机名" [镜像名称] [cmd] # docker run 运行流程 1、检查本地是否用指定镜像,如果没有则去对应的仓库下载镜像 2、启动容器,如果指定了命令则使用指定的命令,如果没有则使用默认的命令 3、返回容器ID
2、查看本机的容器列表
# 格式 docker ps [参数] docker ps # 查看当前系统中正在运行的容器列表 #参数 -a : 查看系统中所有的容器。 -q : 仅显示容器的ID
3、停止和启动一个容器
# 停止 docker stop [容器的ID|名称] # 启动(该容器必须是系统已经存在的容器) docker start [容器的ID|名称]
4、删除容器
# 格式 docker rm [容器名称|ID] # 参数 -f : 强制删除 docker rm -f [容器名称|ID] # 清空容器 docker rm $(docker ps -a -q)
5、查看容器内容
# 格式 docker inspect [容器名称|ID] # 怎么监控docker运行状态? docker inspect -f '{{.State.Running}}' nginx
6、复制命令
1、复制到容器内 docker cp [宿主主机文件路径] 容器ID:容器内路径 2、复制到容器外 docker cp 容器ID:容器内路径 [宿主主机文件路径]
7、进入容器
# 进入容器一般有四种 1、exec : 在容器外向容器内执行一个命令(官方推荐) docker exec [参数] [容器的名称|ID] [cmd] docker exec -it 685e1 bash 2、attach : 在早期docker提供的进入容器的命令(缺点:当其结束时,容器也跟着结束了) docker attach [容器ID|名称] 3、nsenter : 建立一个管道连接上容器主ID nsenter --target $( docker inspect -f {{.State.Pid}} 30d369d70bcd) --mount --uts --ipc --net --pid 4、ssh : 通过ssh连接
加载全部内容