共计 2898 个字符,预计需要花费 8 分钟才能阅读完成。
什么是 Docker ?
Docker 是一个收费的开源工具,设计用于在容器中构建、部署和运行应用程序。装置 docker 的主机是已知的 docker 引擎。Docker 应用操作系统级虚拟化,并提供容器运行时环境。换句话说,Docker 也能够被定义为 PaaS(平台即服务) 工具。
因为 docker 是一个基于守护过程的服务,所以要确保 docker 服务启动并运行。当你启动一个须要多个容器的应用程序,而这些容器之间有依赖关系时,在这种状况下,docker 组合就是解决方案。
在本指南中,咱们将逐渐介绍如何在 Ubuntu 22.04 (Jammy Jellyfish) 上装置 Docker。这些也实用于 Ubuntu 20.04 (Focal Fossa)。
必备条件
- Ubuntu 22.04 / 20.04 along with ssh access
- sudo user with privilege rights
- Stable Internet Connection
(1) 装置 Docker 依赖项
登录到 Ubuntu 22.04 /20.04 零碎,并运行以下 APT 命令以装置 Docker 依赖项
$ sudo apt update
$ sudo apt install -y ca-certificates curl gnupg lsb-release
(2) 启用 Docker 官网存储库
尽管 docker 包在默认的包存储库中可用,但倡议应用 docker 官网存储库。要启用 docker 存储库,请运行以下命令
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
$ echo "deb [arch=$(dpkg --print-architecture) 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
(3) 应用 Apt 命令装置 Docker
Docker 有两个版本:社区版和企业版。咱们将装置社区版,运行上面的命令
$ sudo apt-get update
$ sudo apt install docker-ce docker-ce-cli containerd.io -y
docker 包装置实现后,请将本地用户退出 docker 组,以便该用户无需 sudo 即可执行 docker 命令
$ sudo usermod -aG docker $USER
$ newgrp docker
留神: 将本地用户增加到 docker 组后,请确保登记并再次登录
通过执行以下命令验证 Docker 版本
$ docker version
验证 docker 守护过程服务状态,执行 systemctl 命令
$ sudo systemctl status docker
以上输入确认 docker 守护过程服务已启动并正在运行
(4) 验证和测试 Docker
要测试和验证 docker,应用上面的 docker 命令启动一个 hello-world 容器
$ docker run hello-world
下面的 docker 命令将下载 hello-world 容器镜像,而后将启动一个容器。如果容器显示提示信息,那么咱们能够说 docker 装置胜利了。以上 docker 运行的输入如下所示。
装置 Docker Compose
在 Ubuntu Linux 上装置 docker compose,请顺次执行以下命令
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose
运行如下命令查看 docker-compose 版本
$ docker-compose --version
docker-compose version 1.29.2, build cabd5cfb
$
很好,下面的输入确认装置了 1.29.2 版本的 docker-compose
测试 Docker Compose
To test docker compose, let’s try to deploy WordPress using compose file. Create a project directory‘wordpress’using mkdir command.
为了测试 docker-compose,咱们应用 docker-compose.yaml 文件部署 WordPress,应用 mkdir 命令创立一个 wordpress 目录
$ mkdir wordpress ; cd wordpress
创立一个带有以下内容的 Docker-compose.yaml 文件
$ vi docker-compose.yaml
version: '3.3'
services:
db:
image: mysql:latest
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: sqlpass@123#
MYSQL_DATABASE: wordpress_db
MYSQL_USER: dbuser
MYSQL_PASSWORD: dbpass@123#
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: dbuser
WORDPRESS_DB_PASSWORD: dbpass@123#
WORDPRESS_DB_NAME: wordpress_db
volumes:
db_data: {}
保留并敞开该文件
正如咱们所看到的,咱们应用了两个容器,一个用于 WordPress web,另一个用于数据库。咱们还为 DB 容器创立了长久卷,WordPress web 裸露在 8000 端口上。
要部署 WordPress,请在 wordpress 目录中运行以下命令
$ docker-compose up -d
以上命令的输入如下所示
以上确认两个容器曾经胜利创立。当初尝试通过输出 URL 从 Web 浏览器拜访 WordPress
http://<Server-IP-Address>:8000
完满,以上证实了 WordPress 的装置是通过 docker-compose 启动的。单击 Continue 并依照屏幕批示实现装置。
我的开源我的项目
- course-tencent-cloud(酷瓜云课堂 – gitee 仓库)
- course-tencent-cloud(酷瓜云课堂 – github 仓库)