Ubuntu Docker安装
1. 简介
Docker是一个开源的容器化平台,可以让开发人员将应用程序及其依赖打包为一个轻量级、可移植的容器,并进行快速部署。在Ubuntu上安装Docker可以极大地简化开发和部署的流程,提高开发效率。
本文将介绍如何在Ubuntu系统上安装Docker,并展示一些基本的Docker操作和实例。
2. 安装Docker
2.1 更新系统
在安装Docker之前,我们需要确保系统为最新版本。使用以下命令更新系统软件包:
sudo apt update
sudo apt upgrade
2.2 安装Docker
在Ubuntu 18.04及其后续版本中,可以通过apt package manager安装Docker。使用以下命令安装Docker:
sudo apt install docker.io
2.3 启动Docker服务
安装完成后,使用以下命令启动Docker服务并设置为开机自启动:
sudo systemctl start docker
sudo systemctl enable docker
2.4 验证安装
使用以下命令检查Docker是否成功安装并正在运行:
docker --version
如果成功安装,您将看到类似以下输出:
Docker version 19.03.8, build afacb8b7f0
3. Docker常用命令
3.1 镜像相关命令
- 查看本地镜像列表:
docker images
- 从Docker Hub拉取镜像:
docker pull <image_name>
- 删除本地镜像:
docker rmi <image_name>
3.2 容器相关命令
- 查看正在运行的容器列表:
docker ps
- 查看所有容器列表(包括已停止的):
docker ps -a
- 创建并启动一个容器:
docker run <image_name>
- 停止一个容器:
docker stop <container_id>
- 启动已停止的容器:
docker start <container_id>
- 进入容器命令行:
docker exec -it <container_id> /bin/bash
- 删除一个容器:
docker rm <container_id>
3.3 Docker网络
Docker提供了多种网络配置选项,方便容器之间进行通信和与主机进行通信。以下是常用的网络命令:
- 查看Docker网络列表:
docker network ls
- 创建一个自定义网络:
docker network create <network_name>
- 连接容器到网络:
docker network connect <network_name> <container_name>
- 断开容器与网络的连接:
docker network disconnect <network_name> <container_name>
3.4 数据卷
数据卷是一个可以在容器之间共享和重用的特殊目录。以下是数据卷相关的命令:
- 创建一个数据卷:
docker volume create <volume_name>
- 查看数据卷列表:
docker volume ls
- 删除一个数据卷:
docker volume rm <volume_name>
4. Docker实例
4.1 运行一个简单的nginx容器
运行以下命令创建并启动一个基于nginx镜像的容器:
docker run -d -p 80:80 --name mynginx nginx
解释:
-d
:以后台模式运行容器。-p 80:80
:将主机的80端口映射到容器的80端口。--name mynginx
:将容器命名为mynginx。
访问 http://localhost 即可在浏览器中查看到nginx的默认页面。
4.2 使用Docker Compose编排多个容器
Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。以下是一个简单的演示:
- 创建一个名为
docker-compose.yml
的文件,并将以下内容复制到文件中:
version: '3'
services:
db:
image: mysql:5.7
environment:
- MYSQL_ROOT_PASSWORD=root
web:
image: nginx
ports:
- "80:80"
volumes:
- ./html:/usr/share/nginx/html
depends_on:
- db
- 在当前目录下创建一个名为
html
的文件夹。 -
使用以下命令启动容器:
docker-compose up -d
上述docker-compose.yml
文件定义了两个服务:一个是MySQL数据库,另一个是Nginx Web服务器。这两个服务将在隔离的网络环境中运行,并通过共享卷进行数据传递。
5. 总结
本文详细介绍了在Ubuntu系统上安装Docker的步骤,并展示了Docker的一些常用命令和实例。通过使用Docker,开发人员可以轻松地构建、部署和管理应用程序,提高开发效率和系统可移植性。