如何安装Docker & Docker Compose
文章介绍了 Docker 的工作原理示意图,列举了 docker compose 常用命令,给出境外及国内服务器上 Docker 及 Docker Compose 的安装教程,还解答了 Github 项目中 docker compose.yml 路径使用差异的常见问题及说明了卸载 docker 项目的方法。
一:Docker的工作原理(示意图)
二:docker compose常用命令
docker compose pull: 拉取服务的最新镜像。
docker compose up: 启动容器服务,如果 docker-compose.yml 文件不存在,则会报错。
docker compose up -d: 后台运行容器服务。
docker compose down: 停止并移除容器服务。
docker compose stop: 停止服务但不删除容器。
docker compose start: 启动服务。
docker compose restart: 重启容器服务。
docker compose ps: 查看容器服务的运行状态。
docker compose logs: 查看容器服务的日志。
docker compose exec <service_name>
三:Docker以及Docker Compose的安装教程
官方安装教程:https://docs.docker.com/engine/install/debian/
1.境外服务器
安装Docker
wget -qO- get.docker.com | bash
docker -v #查看 docker 版本
systemctl enable docker # 设置开机自动启动
安装Docker compose
安装最新版本: 使用以下命令下载并安装最新版本的 Docker Compose:
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
赋予执行权限: 赋予新安装的 Docker Compose 执行权限:
sudo chmod +x /usr/local/bin/docker-compose
验证安装: 验证新版本是否安装成功:
docker-compose --version #查看 docker-compose 版本
2.国内服务器
安装Docker
curl -sSL https://get.daocloud.io/docker | sh
docker -v #查看 docker 版本
systemctl enable docker # 设置开机自动启动
安装Docker-compose
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.1.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version #查看 docker-compose 版本
常见问题 FAQ
为什么在Github项目的docker compose.yml中,有的用$(pwd)/data,有的用./data?
在 Docker Compose YAML 文件中使用 $(pwd)/data 和 ./data 的原因如下:
$(pwd)/data:
优点: 绝对路径,因此即使您更改工作目录,它仍然有效。 更具可读性和简洁性。
缺点: 对于其他用户或在不同环境中运行 Compose 文件的人来说可能更难理解。
./data:
优点: 相对路径,因此更容易理解和修改。 在大多数情况下,它与 $(pwd)/data 相同。
缺点: 如果您更改工作目录,则路径可能无效。 对于在不同环境中运行 Compose 文件的人来说可能更难理解。 选择哪一个?
选择使用 $(pwd)/data 还是 ./data 取决于具体情况和个人偏好。
一般来说,建议使用 $(pwd)/data,因为它更具可读性、简洁性和可靠性。
但是,如果您需要在 Compose 文件中使用相对路径,或者您认为 ./data 更适合您的特定情况,那么使用 ./data 也是可以接受的。
GitHub 项目中的差异
至于为什么某些 GitHub 项目的 Docker Compose YAML 文件使用 $(pwd)/data 而另一些项目使用 ./data,这可能是由于以下原因:
作者的偏好:作者可能更喜欢一种方法而不是另一种方法。 项目的特定要求:项目可能需要使用相对路径或绝对路径。 历史原因:该项目可能是在 $(pwd)/data 或 ./data 成为首选之前创建的。 结论
最终,选择使用 $(pwd)/data 还是 ./data 取决于具体情况和个人偏好。两种方法都有其优点和缺点,在大多数情况下,它们是等效的。
如何卸载docker 项目?
在安装目录下
1.根据本地的compose版本,执行 docker compose down 或者 docker-compose down 停止容器
2.动手删除目录,或输入命令 rm -rf 目录 彻底清楚安装目录不留痕迹
3.手动删除镜像
以为halo为例子:
cd /halo #进入halo的目录
docker-compose down #停止并清除容器
cd ..
rm -rf /halo #格式:rm -rf 映射出来的路径(完全删除映射到本地的数据,可以卸载得很干净。)