Linux服务搭建
服务器新机必备配置
docker安装教程
卸载docker
LNMP架构搭建
LAMP架构搭建
yum源配置
本文档使用 MrDoc 发布
-
+
首页
docker安装教程
Docker是一个开源的应用容器引擎,提供了容器的自动化打包、分发和运行的工具和服务,具有隔离性好、可移植性强、易于管理等优势。本文主要介绍如何在Linux服务器中安装和使用Docker与Docker Compose。 准备工作 已创建Linux服务器,并满足以下配置。 Linux服务器入方向放行80和22端口。具体操作,请参见安全组设置。 ## 部署Docker 1. 远程连接轻量应用服务器。 2. 根据服务器的操作系统,选择对应的操作,部署Docker。 ==在安装最新版本的Docker之前,请确保先卸载当前安装的Docker及其相关组件,避免潜在的安装冲突和兼容性问题。== #### 卸载docker参考:docker安装教程-[卸载docker](http://fangan.hailiangyun.com/doc/21/ "卸载docker") ### 一、执行以下命令安装Docker社区版本 #### centos #添加Docker软件包源 > #Red Hat系统第一句代码更换为sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/rhel/docker-ce.repo ```markdown sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo ``` #安装Docker社区版本,容器运行时containerd.io,以及Docker构建和Compose插件 > 报错:CentOS 8.x需将yum改为dnf ```markdown sudo yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin ``` #启动Docker ```markdown sudo systemctl start docker ``` #设置Docker守护进程在系统启动时自动启动 ```markdown sudo systemctl enable docker ``` #### Ubuntu ```markdown #更新包管理工具 sudo apt-get update #添加Docker软件包源 sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common sudo curl -fsSL http://mirrors.cloud.aliyuncs.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository -y "deb [arch=$(dpkg --print-architecture)] http://mirrors.cloud.aliyuncs.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" #安装Docker社区版本,容器运行时containerd.io,以及Docker构建和Compose插件 sudo apt-get -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin #启动Docker sudo systemctl start docker #设置Docker守护进程在系统启动时自动启动 sudo systemctl enable docker ``` #### Debian 1.执行以下命令来卸载旧版本的Docker和相关的软件包并删除Docker相关源,这个命令会帮您卸载掉所有列出的与Docker相关的程序。 > 如果系统提示说部分软件包没有安装,说明您尚未安装此软件包。 ```markdown #删除Docker相关源 sudo rm -f /etc/apt/sources.list.d/*docker*.list #卸载Docker和相关的软件包 for pkg in docker.io docker-buildx-plugin docker-ce-cli docker-ce-rootless-extras docker-compose-plugin docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove -y $pkg; done ``` Docker默认保存位置是`/var/lib/docker/`,卸载Docker时,镜像、容器、存储卷和网络不会被自动删除。如果您想要删除这些数据,需要手动删除。 #### Fedora 1.执行以下命令来卸载旧版本的Docker和相关的软件包并删除Docker相关源,这个命令会帮您卸载掉所有列出的与Docker相关的程序。 > 说明:如果系统提示说部分软件包没有安装,说明您尚未安装此软件包。 ```markdown #删除Docker相关源 sudo rm -f /etc/yum.repos.d/docker*.repo #卸载Docker和相关的软件包 sudo dnf -y remove \ docker-ce \ containerd.io \ docker-ce-rootless-extras \ docker-buildx-plugin \ docker-ce-cli \ docker-compose-plugin ``` 2.Docker默认保存位置是`/var/lib/docker/`,卸载Docker时,镜像、容器、存储卷和网络不会被自动删除。如果您想要删除这些数据,需要手动删除。 ### 二、通过查看Docker版本命令,验证Docker是否安装成功。 sudo docker -v  ## 配置镜像源 当Docker Hub镜像拉取受网络影响时,可配置Docker镜像源提升速度。但请注意,镜像源配置不适用于docker search命令,因为它直接查询Docker Hub。 >要配置阿里云容器镜像服务ACR镜像加速器,请登录容器镜像服务控制台,在左侧导航栏选择镜像工具 > 镜像加速器,在镜像加速器页面获取加速器地址。其他平台参考该操作,不过不叫ACR,搜镜像加速 1.您需要编辑Docker的配置文件/etc/docker/daemon.json,如果该文件不存在,您需要创建它。 ```markdown { "registry-mirrors": ["<加速器地址>"] } ``` 2.完成编辑后,保存文件并退出。然后,为了使新的配置生效,您需要重启Docker服务。这可以通过执行以下命令来完成。 > 重要:重启Docker会使您的Docker服务短暂不可用,请谨慎操作。 ```markdown sudo systemctl restart docker ``` ## 创建简单Web程序镜像 以下是创建基于Nginx镜像的简单Web程序镜像。 1.构建Web程序镜像。 ```markdown #拉取Nginx镜像 sudo docker pull nginx:latest #创建Dockerfile设置Nginx作为基础镜像,并在Web服务器的根目录创建一个显示Hello World!的index.html文件。 sudo tee Dockerfile <<-'EOF' FROM nginx:latest RUN echo 'Hello World!' > /usr/share/nginx/html/index.html EOF #构建镜像,镜像名称为hello-world sudo docker build . -t hello-world:latest ``` 2.启动Web程序镜像的容器,并且命名容器名称为hello-world。 ```markdown sudo docker run -d -p 80:80 --name hello-world hello-world:latest ``` 3.执行`curl http://localhost`命令,验证Web程序是否正确显示Hello World! ## 安装Docker Compose 如果您参考的本文安装Docker,那么Compose插件将默认安装到您的实例中。您可以通过如下命令查看。 ```markdown sudo docker compose version ``` 预期输出(vN.N.N代表Compose的版本):==Docker Compose version vN.N.N== 如果您的Compose插件未成功安装或您需要使用Compose独立版(docker-compose)可参考下面内容。 > 使用Compose独立版时,命令中间要用连字符,比如docker-compose up。 使用Compose插件时,命令中间不用连字符,比如docker compose up。 #### Compose独立版(插件版和独立版二选一) 1.下载并安装Compose独立版。 > 在尝试访问GitHub时,您可能会遇到由于网络问题导致的访问超时或连接失败等异常情况。为了解决这些问题,请尝试多次重新连接。 ```markdown curl -SL https://github.com/docker/compose/releases/download/v2.30.3/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 ``` 2.执行查看版本命令,测试是否安装成功。 ```markdown sudo docker-compose version ``` #### Compose插件版(插件版和独立版二选一) ##### CentOS 7.x & Red Hat & Anolis OS ```markdown sudo yum -y install docker-compose-plugin ``` 使用查看Compose版本命令,验证Compose是否安装成功。 ```markdown sudo docker compose version ``` ##### CentOS 8.x、Fedora ```markdown sudo dnf -y install docker-compose-plugin ``` 使用查看Compose版本命令,验证Compose是否安装成功。 ```markdown sudo docker compose version ``` ## 使用Docker Compose部署应用 以下是创建基于WordPress镜像的Web程序。 1.创建Compose编排文件并启动WordPress服务。 #创建编排文件,添加Mysql与WordPress ```markdown sudo tee docker-compose.yaml <<-'EOF' version: '3.1' services: wordpress: image: wordpress restart: always ports: - "80:80" environment: #数据库地址 WORDPRESS_DB_HOST: db #数据库用户名 WORDPRESS_DB_USER: wordpress #数据库密码 WORDPRESS_DB_PASSWORD: 123456 #数据库名称 WORDPRESS_DB_NAME: wordpress volumes: - wordpress:/var/www/html db: image: mysql:5.7 restart: always ports: - "3306:3306" environment: #数据库名称 MYSQL_DATABASE: wordpress #数据库用户名 MYSQL_USER: wordpress #数据库密码 MYSQL_PASSWORD: 123456 #数据库ROOT用户密码 MYSQL_RANDOM_ROOT_PASSWORD: '1' volumes: - db:/var/lib/mysql volumes: wordpress: db: EOF ``` #启动服务容器。 ``` sudo env "PATH=$PATH" docker compose up -d ``` 2.在浏览器中输入`https://公网IP`,即可进入WordPress配置页面,您可以根据界面提示配置相关参数后,访问WordPress。
admin
2025年11月2日 02:46
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码