1. Docker 一键安装
这里给大家分享我的 Docker 一键安装脚本,在大部分基于 Linux 内核的系统中可以直接使用。
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
sudo systemctl enable docker
sudo systemctl start docker
docker version
if [ $? -eq 0 ];then
echo "docker successful installation!"
fi
# 添加国内镜像
touch /etc/docker/daemon.json
echo "{
\"registry-mirrors\": [
\"http://hub-mirror.c.163.com\"
]
}" > /etc/docker/daemon.json
sudo systemctl daemon-reload
sudo systemctl restart docker
2. Docker 语法
Docker 的语法非常易懂,它使用简洁的命令和关键字来定义和管理容器。下面是一些常用的Docker 语法元素:
-
镜像(image) :镜像是 Docker 的基本概念,它是一个轻量且独立的可执行软件包。你可以将镜像看作是一个包含了完整运行环境的模板,其中包括应用程序、库和依赖。你可以使用
docker pull
命令从 Docker Hub 或其他镜像仓库中获取镜像,也可以使用docker build
命令通过 Dockerfile 构建自定义镜像。 -
容器(container) :容器是基于镜像创建的运行实例。你可以使用
docker run
命令来创建并启动一个容器,也可以使用docker start
、docker stop
、docker restart
命令来分别启动、停止和重启容器。容器是轻量级的,它们共享主机操作系统的内核,因此可以更高效地运行多个容器。 -
Dockerfile :Dockerfile 是一个文本文件,用于定义如何构建 Docker 镜像。它包含一系列的指令和配置项,例如基础镜像、运行命令、复制文件、设置环境变量等。通过编写 Dockerfile,你可以创建包含自定义配置和应用程序的镜像。
-
映射端口(port mapping) :使用
-p
参数可以将容器内部的端口映射到主机上的端口。例如,-p 8080:80
将容器内的 80 端口映射到主机的 8080 端口,这样你就可以通过访问主机的 8080 端口来访问容器的服务。 -
数据卷(volume) :数据卷是用于持久存储数据的特殊目录或文件。数据卷可以在容器之间共享和重用,使得数据持久化且不受容器状态的影响。你可以使用
-v
参数来创建和管理数据卷。
3. 常用 Docker 命令
下面是一些常用的 Docker 命令,让我们一起来了解一下:
-
docker pull IMAGE_NAME
:从 Docker Hub 中下载指定名称的镜像。例如:docker pull nginx
。 -
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
:根据指定的镜像创建并运行一个容器。OPTIONS 可以包括端口映射、数据卷挂载、环境变量设置等。例如:docker run -d -p 8080:80 nginx
,这将在后台运行一个 NGINX 容器并将主机的 8080 端口映射到容器的