Docker 是一个开源的容器化平台,用于自动化应用程序的部署、扩展和管理。它使得开发人员能够将应用及其依赖项打包成一个标准化的容器中,从而在任何环境中一致运行。
以下是安装和使用 Docker 的详细步骤和一些常用命令的说明。
在开始安装 Docker 之前,确保系统是最新的,运行以下命令更新软件包列表:
bashsudo apt-get update # 对于 Debian/Ubuntu 系统
sudo yum update # 对于 CentOS/RHEL 系统
在安装 Docker 之前,必须确保系统安装了 apt-transport-https
和 ca-certificates
等依赖。
对于 Ubuntu/Debian 系统:
bashsudo apt-get install apt-transport-https ca-certificates curl software-properties-common
对于 CentOS/RHEL 系统:
bashsudo yum install -y yum-utils device-mapper-persistent-data lvm2
使用官方安装脚本自动安装
bashcurl -fsSL https://test.docker.com -o test-docker.sh sudo sh test-docker.sh
使用官方安装脚本自动安装
bashcurl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
在安装完成后,启动 Docker 服务并设置开机启动:
bashsudo systemctl start docker
sudo systemctl enable docker
安装完成后,使用以下命令验证 Docker 是否正确安装:
bashdocker --version
安装完成后,修改/etc/docker/daemon.json文件,使用国内的镜像代理,加速镜像下载
bashsudo vim /etc/docker/daemon.json
json{
"registry-mirrors": ["https://mirror.ccs.tencentyun.com"],
"log-driver":"json-file",
"log-opts": {"max-size":"1000m", "max-file":"3"}
}
如果显示 Docker 版本信息,则说明 Docker 已成功安装。
安装完 Docker 后,下面是一些常用的 Docker 命令来帮助你管理容器和镜像。
bashsudo systemctl status docker
bashsudo systemctl start docker
bashsudo systemctl stop docker
bashdocker --version
Docker 容器是运行的实例。使用下面的命令来运行一个简单的容器:
bashdocker run hello-world
该命令将从 Docker Hub 下载一个名为 hello-world
的镜像,并启动一个容器运行它。第一次运行时,Docker 会自动从镜像仓库下载并执行。
Docker 提供了许多公共镜像,可以使用 docker pull
命令从 Docker Hub 拉取镜像。例如,拉取 nginx
镜像:
bashdocker pull nginx
可以通过以下命令查看当前系统上已经下载的镜像:
bashdocker images
启动一个容器并运行指定的命令。例如,启动一个 Nginx 容器:
bashdocker run -d -p 8080:80 --name mynginx nginx
这里的参数解释:
-d
:后台运行容器。-p 8080:80
:将宿主机的 8080 端口映射到容器的 80 端口。--name mynginx
:为容器指定一个名称。查看当前正在运行的容器:
bashdocker ps
查看所有容器(包括停止的容器):
bashdocker ps -a
停止一个正在运行的容器:
bashdocker stop <容器ID或容器名称>
例如,停止名为 mynginx
的容器:
bashdocker stop mynginx
删除停止的容器:
bashdocker rm <容器ID或容器名称>
例如,删除名为 mynginx
的容器:
bashdocker rm mynginx
删除不再需要的镜像:
bashdocker rmi <镜像ID或镜像名称>
例如,删除 nginx
镜像:
bashdocker rmi nginx
查看容器的日志信息:
bashdocker logs <容器ID或容器名称>
如果需要进入正在运行的容器,可以使用 docker exec
命令:
bashdocker exec -it <容器ID或容器名称> /bin/bash
进入容器后,你可以像在普通 Linux 系统中一样进行操作。
使用以下命令查看容器的资源使用情况:
bashdocker stats <容器ID或容器名称>
如果你有一个自定义的 Dockerfile 文件,可以使用以下命令构建自己的镜像:
bashdocker build -t <镜像名称>:<标签> .
例如:
bashdocker build -t myapp:v1 .
保存镜像到一个 tar 文件:
bashdocker save -o <文件名>.tar <镜像名称>:<标签>
加载镜像:
bashdocker load -i <文件名>.tar
清理所有停止的容器、未使用的镜像和未使用的网络资源:
bashdocker system prune
你也可以使用 docker system prune -a
来删除所有未使用的镜像。
以上教程涵盖了在 Linux 上安装 Docker 的基本步骤以及一些常用的 Docker 命令。Docker 是一个非常强大的容器化平台,能帮助开发者在隔离的环境中运行应用程序。掌握这些基本命令后,你可以开始使用 Docker 来管理你的应用程序容器,简化部署和运维工作。