Docker操作命令小助手

本文详细介绍了如何在阿里云上安装Docker,配置阿里镜像加速器,并提供了docker和docker-compose的常用命令集锦,包括镜像操作、容器管理、服务构建与部署等,是IT技术人员必备的Docker实践手册。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

docker

安装docker (阿里源)

参考地址:https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.64951b11cumASc

阿里镜像加速器(需有阿里云账号)

参考地址:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

docker 命令大全
# 使用当前目录Dockerfile打包镜像
docker build -t doker/app . 

# 使用URL的Dockerfile打包镜像。
docker build github.com/creack/docker-firefox

# 使用指定Dockerfile文件的位置打包镜像
docker build -f /path/to/a/Dockerfile .

# 查看镜像
docker images 

# 使用docker镜像,启动一个名为my-test的容器
docker run -d --name my-test -p 5000:5000 images

# 将镜像保存为tar包
docker save -o myimage_latest.tar myimage:latest

# 使用gzip将镜像保存为tar包,获得包体积会更小
docker save myimage:latest | gzip > myimage_latest.tar.gz

# 从tar包或STDIN加载加镜像
docker load -i myimage_latest.tar
docker load < myimage_latest.tar.gz

# 创建一个指向源镜像的标记目标镜像(第一个参数为源镜像)
docker tag 0e5574283393 my/httpd:version1.0
docker tag httpd my/httpd:version1.0
docker tag httpd:test my/httpd:version1.0.test

# 删除未使用的镜像
docker image prune -f

# 批量删除所有镜像
docker rmi $(docker images -q)

# 启动一个容器,在容器内执行/bin/bash命令
docker run -it 9531ffd55a8b /bin/bash

# 进入容器
docker exec -it 9531ffd55a8b /bin/bash

# 登录Docker registry 或自建仓库
docker login
docker login -u xxx -p xxx localhost:8080

# 推送镜像到Docker registry 或自建仓库
docker push 你的仓库用户名/myimage_latest:latest
docker push localhost:8080/dir/myimage_latest:latest

# 批量停止所有容器
docker stop $(docker ps -q -a)

# 批量删除所有容器
docker rm $(docker ps -q -a)

docker-compose

安装 docker-compose
# 运行此命令下载Docker Compose的当前稳定版本(官方)
curl -SL https://github.com/docker/compose/releases/download/v2.29.1/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose

# 给可执行权限
sudo chmod +x /usr/local/bin/docker-compose

# 创建软链接
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

# 查看版本
docker-compose --version
docker-compose 命令大全
# 构建服务
docker-compose build

# 提取docker-compose.yml or docker-stack.yml中定义的服务关联的镜像
docker-compose pull

# 提取docker-compose.yml or docker-stack.yml中定义的服务关联的镜像中的某一个服务
docker-compose pull db

# 将服务的镜像推送到存储库,以下方示例为主
docker-compose push

version: '3'
services:
  service1:
    build: .
    image: localhost:5000/yourimage  # goes to local registry

  service2:
    build: .
    image: your-dockerid/yourimage  # goes to your repository on Docker Hub

# 列出容器
docker-compose ps

# 重新启动所有已停止且正在运行的服务
docker-compose restart [SERVICE...]

# 显示正在运行的进程
docker-compose top

# 暂停服务的运行容器。它们可以通过docker compose Unpuse取消暂停
docker-compose pause [SERVICE...]

# 取消暂停服务的容器。
docker-compose unpause

# 显示服务的日志输出。
docker-compose logs
docker-compose logs -f 
docker-compose logs -f --tail="10"
### Docker 容器重启策略及其配置方法 Docker 提供了多种容器重启策略,这些策略可以显著提升服务的可用性和稳定性。以下是关于 Docker 容器重启策略的相关介绍和具体配置方法。 #### 一、Docker 容器的常见重启策略 Docker 支持以下几种常见的重启策略: 1. **no** 这是默认的重启策略。当容器退出后,不会自动重启[^3]。 2. **on-failure** 当容器因错误而退出(即退出状态码不为 0),Docker 将尝试重新启动容器。此策略还可以指定最大重试次数,例如 `--restart on-failure:5` 表示最多重试 5 次。 3. **always** 不论容器为何种原因退出,Docker 都会始终尝试重新启动它。即使手动停止容器(如使用 `docker stop` 命令),也会再次启动。此外,在 Docker Daemon 重启时,无论容器之前的状态如何,都会被重新启动。 4. **unless-stopped** 类似于 `always` 策略,但它有一个例外情况:如果容器曾被显式停止,则在 Docker Daemon 重启时不会重新启动该容器。 --- #### 二、配置 Docker 容器的重启策略 ##### 方法 1:通过 `docker run` 设置重启策略 可以在创建容器时直接设置重启策略。例如: ```bash docker run --name my_container --restart=always nginx ``` 上述命令表示以 `always` 的重启策略运行名为 `my_container` 的 Nginx 容器[^3]。 ##### 方法 2:更新已存在的容器重启策略 对于已经在运行中的容器,可以通过 `docker update` 修改其重启策略。操作如下: 1. 查看当前容器的配置信息: ```bash docker inspect <container_id_or_name> ``` 2. 更新容器的重启策略: ```bash docker update --restart=always <container_id_or_name> ``` 上述命令将目标容器的重启策略更改为 `always`[^1]。 3. 确认更改是否生效: ```bash docker inspect <container_id_or_name> | grep RestartPolicy ``` 如果显示 `"RestartPolicy": {"Name":"always", ...}`,则说明更新成功[^1]。 --- #### 三、注意事项 - 在生产环境中推荐合理选择重启策略,尤其是高可用场景下建议优先考虑 `always` 或 `unless-stopped` 策略。 - 对于调试阶段的应用程序,可以选择 `on-failure` 策略以便捕获异常并分析日志。 - 若不需要任何自动化恢复机制,则可保持默认的 `no` 策略[^2]。 --- 问题
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吹落的树叶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值