在本文中,我们将学习如何在 Ubuntu 19 服务器上安装 Docker 并在该 Docker 主机上执行一些基本命令。
Docker 是一组平台即服务 (PaaS) 产品,它们使用操作系统级虚拟化以称为容器的包形式交付软件。
在 Ubuntu 18.04 上更新已安装的软件包
使用 PuTTY 等 ssh 工具以 jackli 用户身份连接 docker-01.sysadminlabs.com。
使用 apt 命令更新现有软件包。
jackli@docker-01:~$ sudo apt update Hit:1 http://pk.archive.ubuntu.com/ubuntu disco InRelease Get:2 http://pk.archive.ubuntu.com/ubuntu disco-updates InRelease [97.5 kB] Get:3 http://pk.archive.ubuntu.com/ubuntu disco-backports InRelease [88.8 kB] Get:4 http://pk.archive.ubuntu.com/ubuntu disco-security InRelease [97.5 kB] Fetched 284 kB in 3s (88.5 kB/s) Reading package lists... Done Building dependency tree Reading state information... Done 84 packages can be upgraded. Run 'apt list --upgradable' to see them.
有 84 个软件包升级可用。
使用以下命令安装这些升级。
jackli@docker-01:~$ sudo apt upgrade
在 Ubuntu 18.04 上安装 Docker
Docker 在 apt 存储库中可用,因此,我们可以使用单个 apt 命令轻松地将其安装在 Ubuntu 服务器上。
jackli@docker-01:~$ sudo apt install docker.io
启用并启动 Docker 服务。
jackli@docker-01:~$ sudo systemctl enable --now docker Synchronizing state of docker.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable docker Created symlink /etc/systemd/system/multi-user.target.wants/docker.service -> /lib/systemd/system/docker.service.
验证 Docker 版本。
jackli@docker-01:~$ docker --version Docker version 18.09.7, build 2d0083d
在 Ubuntu 18.04 上执行基本的 Docker 命令
在 Docker 在线注册表 (Docker Hub) 中搜索 Alpine Linux。
jackli@docker-01:~$ sudo docker search alpine NAME DESCRIPTION STARS OFFICIAL AUTOMATED alpine A minimal Docker image based on Alpine Linux->¦ 6038 [OK] mhart/alpine-node Minimal Node.js built on Alpine Linux 453 anapsix/alpine-java Oracle Java 8 (and 7) with GLIBC 2.28 over A->¦ 439 [OK]
使用 docker 命令拉取 Alpine Linux 的镜像。
jackli@docker-01:~$ sudo docker pull alpine Using default tag: latest latest: Pulling from library/alpine c9b1b535fdd9: Pull complete Digest: sha256:ab00606a42621fb68f2ed6ad3c88be54397f981a7b70a79db3d1172b11c4367d Status: Downloaded newer image for alpine:latest
列出在我们的 Ubuntu 18.04 服务器上本地可用的 Docker 镜像。
jackli@docker-01:~$ sudo docker images REPOSITORY TAG IMAGE ID CREATED SIZE alpine latest e7d92cdc71fe 6 days ago 5.59MB
使用 Alpine Linux 镜像以交互模式创建一个 Docker 容器并在其上执行一些测试命令。
jackli@docker-01:~$ sudo docker run -it --rm alpine /bin/sh / # uname -a Linux 40c0683c7989 5.0.0-38-generic #41-Ubuntu SMP Tue Dec 3 00:27:35 UTC 2019 x86_64 Linux / # cat /etc/os-release NAME="Alpine Linux" ID=alpine VERSION_ID=3.11.3 PRETTY_NAME="Alpine Linux v3.11" HOME_URL="https://alpinelinux.org/" BUG_REPORT_URL="https://bugs.alpinelinux.org/" / # exit
使用 Alpine Linux 镜像以分离模式创建 Docker 容器。
jackli@docker-01:~$ sudo docker run -d alpine 0ad0a833a2b3e0e1c6a9735f27e8849786708d23f7c9070645d2c55650903c02
检查最近执行的容器列表。
jackli@docker-01:~$ sudo docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 0ad0a833a2b3 alpine "/bin/sh" About a minute ago Exited (0) About a minute ago mystifying_blackburn
删除 Docker 容器。
jackli@docker-01:~$ sudo docker container rm 0ad0a833a2b3 0ad0a833a2b3
删除在我们的 Ubuntu 18.04 服务器上本地可用的图像。
jackli@docker-01:~$ sudo docker rmi alpine Untagged: alpine:latest Untagged: alpine@sha256:ab00606a42621fb68f2ed6ad3c88be54397f981a7b70a79db3d1172b11c4367d Deleted: sha256:e7d92cdc71feacf90708cb59182d0df1b911f8ae022d29e8e95d75ca6a99776a Deleted: sha256:5216338b40a7b96416b8b9858974bbe4acc3096ee60acbc4dfb1ee02aecceb10
我们已经在 Ubuntu 18.04 服务器上成功安装了 Docker 并在其上执行了一些基本命令。
在 Ubuntu服务器 18.04 LTS 上安装 Docker Compose
Compose(或者 Docker Compose)是一种用于定义和运行多容器 Docker 应用程序的软件工具。
Docker Compose 使用 YAML 文件创建、运行和配置应用程序服务。
我们可以使用相同的命令在我们首选的 Linux 发行版上安装 docker-compose。
jackli@docker-01:~$ sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose [sudo] password for jackli: % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 617 100 617 0 0 696 0 --:--:-- --:--:-- --:--:-- 695 100 16.3M 100 16.3M 0 0 551k 0 0:00:30 0:00:30 --:--:-- 636k
向所有用户授予 docker-compose 可执行文件的执行权限。
jackli@docker-01:~$ sudo chmod +x /usr/local/bin/docker-compose
在公共二进制路径中创建到 docker-compose 命令的软链接,以便可以从任何路径访问该命令。
jackli@docker-01:~$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
执行 docker-compose 命令并检查其版本。
jackli@docker-01:~$ sudo docker-compose --version docker-compose version 1.25.4, build 8d51620a
Docker Compose 已成功安装在 Ubuntu服务器 18.04 LTS 上。