Loading... ## 安装Docker 在 Ubuntu 上安装 Docker 的流程相对简单,以下是详细的安装步骤: ### 1. 更新现有的包 首先,确保系统的包索引是最新的: ```bash sudo apt update ``` ### 2. 安装必要的依赖 安装一些必要的包,以便系统能够通过 HTTPS 来获取 Docker 仓库的更新: ```bash sudo apt install apt-transport-https ca-certificates curl software-properties-common ``` ### 3. 添加 Docker 的官方 GPG 密钥 接着,添加 Docker 官方的 GPG 密钥,用于验证 Docker 包的合法性: ```bash curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg ``` ### 4. 添加 Docker 的 APT 仓库 将 Docker 的 APT 仓库添加到你的系统中: ```bash echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null ``` 此命令将把 Docker 仓库添加到你的 APT 源中,并确保只从稳定的版本中安装。 ### 5. 更新包索引 再次更新包索引,以确保可以访问 Docker 仓库中的包: ```bash sudo apt update ``` ### 6. 安装 Docker 引擎 使用下面的命令安装 Docker: ```bash sudo apt install docker-ce docker-ce-cli containerd.io ``` - `docker-ce`:Docker 社区版(Community Edition) - `docker-ce-cli`:Docker 命令行客户端 - `containerd.io`:容器运行时,它是 Docker 的基础组件 ### 7. 启动 Docker 服务 安装完成后,启动 Docker 服务并设置开机自启: ```bash sudo systemctl start docker sudo systemctl enable docker ``` ### 8. 验证 Docker 安装 可以通过运行以下命令来检查 Docker 是否成功安装: ```bash docker --version ``` 你应该会看到类似于以下内容的输出: ```bash Docker version 20.10.17, build 100c701 ``` ### 9. 运行 Docker 示例 你可以通过运行 Docker 官方提供的 hello-world 容器来验证 Docker 是否工作正常: ```bash sudo docker run hello-world ``` 如果安装成功,Docker 会下载并运行 `hello-world` 镜像,并输出一条欢迎信息。 ### 10. (可选)非 root 用户使用 Docker 默认情况下,Docker 需要使用 `sudo` 来执行。如果你希望以非 root 用户运行 Docker 命令,可以将用户添加到 Docker 组: ```bash sudo usermod -aG docker $USER ``` 添加用户后,你需要退出并重新登录,或者运行下面的命令来应用更改: ```bash newgrp docker ``` 之后,你可以直接运行 Docker 命令而无需使用 `sudo`。 ### 11.配置国内镜像加速 编辑或创建 `/etc/docker/daemon.json` 文件,配置镜像源。 ```bash sudo nano /etc/docker/daemon.json ``` 添加以下内容: ```json { "registry-mirrors": ["https://hub-mirror.c.163.com"] } ``` ## ubuntu安装DockerCompose ### 1.执行命令 ```bash sudo curl -L "https://github.com/docker/compose/releases/download/v2.23.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose ``` 提示: - 如果是普通用户,没有权限,需要切换到root用户:sudo -i - 可以修改url切换版本 如果上面链接失效,请尝试使用下面命令 ```bash curl -L https://get.daocloud.io/docker/compose/releases/download/v2.23.3/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose ``` ### 2.授权执行权限 ```bash sudo chmod +x /usr/local/bin/docker-compose ``` ### 3.查看是否安装正确 ```bash docker-compose -v ``` ### 4.Docker-compose命令大全 ```bash # 默认使用docker-compose.yml构建镜像 $ docker-compose build $ docker-compose build --no-cache # 不带缓存的构建 # 指定不同yml文件模板用于构建镜像 $ docker-compose build -f docker-compose1.yml # 列出Compose文件构建的镜像 $ docker-compose images # 启动所有编排容器服务 $ docker-compose up -d # 查看正在运行中的容器 $ docker-compose ps # 查看所有编排容器,包括已停止的容器 $ docker-compose ps -a # 进入指定容器执行命令 $ docker-compose exec nginx bash $ docker-compose exec web python manage.py migrate --noinput # 查看web容器的实时日志 $ docker-compose logs -f web # 停止所有up命令启动的容器 $ docker-compose down # 停止所有up命令启动的容器,并移除数据卷 $ docker-compose down -v # 重新启动停止服务的容器 $ docker-compose restart web # 暂停web容器 $ docker-compose pause web # 恢复web容器 $ docker-compose unpause web # 删除web容器,删除前必需停止stop web容器服务 $ docker-compose rm web # 查看各个服务容器内运行的进程 $ docker-compose top ``` ## 卸载流程 ### 1. 删除 Docker 及相关包 ```bash sudo apt-get purge docker docker-ce docker-engine docker.io containerd runc ``` ### 2. 删除不再需要的依赖包 ```bash sudo apt-get autoremove -y ``` ### 3. 清理无用的配置文件 ```bash dpkg -l | grep docker ``` ```bash dpkg -l | grep ^rc | awk '{print $2}' | sudo xargs dpkg -P ``` ![](https://blog.fivk.cn/usr/uploads/2024/11/226033544.png) ```bash sudo apt-get autoremove docker-ce-* ``` ### 4. 确保 Docker 服务没有运行 ```bash sudo systemctl stop docker sudo systemctl disable docker sudo ps aux | grep docker sudo systemctl status docker ``` ### 5. 删除 Docker 相关目录和配置 ```bash sudo rm -rf /etc/systemd/system/docker.service.d sudo rm -rf /var/lib/docker sudo rm -rf /var/run/docker sudo rm -rf /etc/docker sudo rm -rf /var/log/docker ``` ### 6. 删除 Docker 二进制文件(如果有的话) ```bash sudo rm -f /usr/local/bin/docker sudo rm -f /usr/local/bin/docker-compose sudo rm -f /usr/local/bin/docker-machine ``` ### 7. 如果 Docker 镜像和容器没有清理,执行此命令 ```bash sudo docker system prune -a --volumes ``` ### 8. 确认 Docker 已卸载 ```bash docker --version # 该命令应显示 Docker 未安装或找不到 ``` 最后修改:2024 年 11 月 14 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏