| 命令 | 描述 |
| systemctl enable docker.service | //开机自启 docker |
| systemctl disable docker.service | //关闭开机自启 docker |
| 启动时加--restart=always | //docker容器设置自动启动 |
| docker rm -f <containerid> | //删除指定容器 |
| docker rm $(docker ps -a|grep Created|awk '{print $1}') 或者 docker rm $(docker ps -qf status=created) | 删除未启动成功的容器 |
| docker rm $(docker ps -a|grep Exited|awk '{print $1}') 或者 docker rm $(docker ps -qf status=exited) | 删除退出状态的容器 |
| docker rm $(docker ps -a -q) #正在运行的删除不了,所有未运行的都被删除了 或者 docker container prune #Docker 1.13版本以后,可以使用 docker containers prune 命令,删除孤立的容器 | 删除所有未运行的容器 |
| docker images | 检查docker 是否安装完成 |
| sudo systemctl start docker | 启动docker |
| //例如docker-ce-18.09.1 从:都第一个连接符 $ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io | 安装docker |
| //阿里云 $ sudo yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo | //阿里云 docker稳定版 |
| //清华源 $ sudo yum-config-manager \ --add-repo \ https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo | //清华源 docker 稳定版安装 |
| yum -y install docker | 安装Docker, |
| usermod -G docker $USER | //将当前用户添加到docker组中. |
| groupadd docker | 如果docker组不存在 |
| docker search nginx | 查找docker 镜像 |
| docker pull nginx | 拉取镜像 |
| docker run -i -t nginx /bin/bash | 运行镜像并进入镜像 |
| docker ps:列出运行中的容器 | |
| docker ps -a :列出所有的容器 | |
| docker stop 容器id:停止容器 | |
| docker kill 容器id:强制停止容器 | |
| docker start 容器id:启动已停止的容器 | |
| docker inspect 容器id: | 查看容器的所有信息 |
| docker container logs 容器id:查看容器日志 | |
| docker top 容器id:查看容器里的进程 | |
| docker exec -it 容器id /bin/bash:进入容器 | |
| exit:退出容器 | |
| docker rm 容器id | :删除已停止的容器 |
| docker rm -f 容器id | :删除正在运行的容器 |
| .在主机/mnt目录下执行 mkdir -p ./nginx/{conf,html,logs}创建挂载目录 | 创建nginx挂在目录 |
| chmod 777 /shangyc/docker/jenkins_mount | 赋权限 |
| 创建nginx容器 | 首先测试下nginx镜像是否可用, 使用docker run -d --name mynginx -p 80:80 231d创建并启动nginx容器 -d 指定容器以守护进程方式在后台运行 --name 指定容器名称,此处我指定的是mynginx -p 指定主机与容器内部的端口号映射关系, 格式 -p [宿主机端口号]:[容器内部端口],此处我使用了主机80端口,映射容器80端口 231d 是nginx的镜像IMAGE ID前4位 |
| 创建挂载目录后重启(创建挂载目录后停掉并且删除之前的容器再重新创建) | docker run -d --name nginx -p 80:80 -v /mnt/nginx/nginx.conf:/etc/nginx/nginx.conf -v /mnt/nginx/logs:/var/log/nginx -v /mnt/nginx/html:/usr/share/nginx/html -v /mnt/nginx/conf:/etc/nginx/conf.d --privileged=true de2543b9436b |
| 将容器内的nginx.conf与default.conf文件分别拷贝到主机/mnt/nginx与目录/mnt/nginx/conf下,分别执行 docker cp ef:/etc/nginx/nginx.conf ./ dokcer cp ef:/etc/nginx/conf.d/default.conf ./conf/ | |
| docker run -d --name jenkins --user=root -p 8888:8080 -p 5000:5000 -v /mnt/jenkins:/var/jenkins_home -v /etc/localtime:/etc/localtime --restart=always --privileged=true 73264ace1394 | 启动jenkins -d 后台运行镜像 -p 80:8080 将镜像的8080端口映射到服务器的80端口 -p 50000:50000 将镜像的50000端口映射到服务器的50000端口 tcp -v jenkins:/var/jenkins_home /var/jenkins_home目录为jenkins工作目录,我们将硬盘上的一个目录挂载到这个位置,方便后续更新镜像后继续使用原来的工作目录。 -v /etc/localtime:/etc/localtime 让容器使用和服务器同样的时间设置。 --name jenkins 给容器起一个别名 --privileged=true 设置挂载访问权限 --restart=always 一直启动 |
| http://mirror.esuni.jp/jenkins/updates/update-center.json | 修改jenkins源代码 |
| docker commit -p 30b8f18f20b4 container-backup | 创建快照 |
| # docker save -o ~/container-backup.tar container-backup | 保存tar快照 |
| # docker load -i ~/container-backup.tar | 恢复快照 |
| docker run -d -p 80:80 container-backup | 运行镜像 |
| docker rmi $(docker images | grep "none" | awk '{print $3}') | docker 删除tag为none镜像 |
| docker start $(docker ps -a | awk '{ print $1}' | tail -n +2) | 启动所有容器 |
| docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2) | 关闭所有容器 |
docker常用命令解析
最新推荐文章于 2024-03-19 23:10:40 发布
本文详细介绍了如何通过systemctl管理和配置Docker服务,包括开机自启、容器启动策略,以及如何操作docker容器、镜像、挂载和资源管理。涵盖了docker run、rm、commit、save/load等核心命令及其应用实例。
789

被折叠的 条评论
为什么被折叠?



