我身上錢不夠的大學生想試試使用Docker!
Docker 是什么
Docker是一个利用容器虚拟化技术将应用程序打包并方便地分发、迁移和运行的平台。
容器将应用程序及其依赖关系封装起来,使其在不同的环境下能够保持一致的运行。
我个人总结了有关Docker的基本用法。
Docker的概念
-
- 影像(Image)
-
- Docker影像是一個包含應用程式和其執行所需的所有相依性、設定、程式碼等的套件。影像是不變的,並作為容器的基礎。
容器(Container)
從影像中產生的可執行狀態下的環境,其中進程被隔離。容器輕量且在不同的環境中運作一樣。
Docker Hub
用於存儲和共享Docker影像的基於雲端的註冊表。可以存儲公開影像和私有影像。一些先輩們會創建並公開自己想要使用的環境。
在Linux系统上开始使用Docker
-
- Docker的安装:
-
- 要在Linux上安装Docker,请按照官方步骤进行操作。
https://docs.docker.com/engine/install/ubuntu/
这里是在Ubuntu环境下的设置。
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg –dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Docker命令基础
docker pull <镜像名称>:从Docker Hub下载镜像。
docker run <镜像名称>:从镜像创建并运行容器。
docker ps:显示当前运行中的容器。
docker images:显示本地保存的镜像列表。
例如,创建Nginx容器
以下是在Docker中运行Nginx的简单示例。
docker pull nginx # 下载Nginx镜像
docker run -d -p 8080:80 nginx # 在后台通过端口8080运行Nginx容器
现在,访问http://localhost:8080,应该会显示Nginx的默认页面。
Docker Compose
使用Docker Compose可以定义多个容器,并轻松启动和管理它们。
创建一个docker-compose.yml文件,然后可以使用docker-compose up命令批量启动它们。
例如,可以同时启动API和数据库。
重要事项:
Dockerは権限を持つ操作を行うため、通常は docker グループにユーザを追加して利用します。以下のコマンドで追加できます。
sudo usermod -aG docker $USER
ユーザを docker グループに追加したら、一度ログアウトして再ログインしてください。
Docker的基本命令
-
- docker pull – 下载镜像:
-
- 从Docker Hub上下载镜像。
-
- docker pull <镜像名>
例如,下载Nginx官方镜像:
docker pull nginx
docker run – 创建和运行容器
从镜像创建并运行容器。
docker run [选项] <镜像名>
例如,以8080端口运行Nginx:
docker run -d -p 8080:80 nginx
-d: 后台运行。
-p 8080:80: 将主机的8080端口映射到容器的80端口。
docker ps – 显示运行中的容器
显示当前运行中的容器。
docker ps
*docker images – 显示本地镜像:
显示已保存在本地的镜像列表。
docker images
docker exec – 进入运行中的容器
在运行中的容器内执行命令。
docker exec -it <容器ID或容器名> <命令>
例如,进入Nginx容器:
docker exec -it mynginx bash
-it: 以交互模式进入。
docker stop – 停止容器
停止运行中的容器。
docker stop <容器ID或容器名>
Docker Compose的应用利用
-
- 创建 docker-compose.yml 文件
-
- 在项目的根目录中创建 docker-compose.yml 文件。
-
- 版本: ‘3’
-
- 服务:
-
- web:
-
- 镜像: nginx
-
- 端口:
-
- – “8080:80”
docker-compose up – 批量启动容器
根据 docker-compose.yml 文件,批量启动容器。
docker-compose up -d
-d: 后台启动。
docker-compose down – 停止和删除容器
停止正在运行的容器,并删除相关资源。
docker-compose down
結束在一起
通过使用docker和docker-compose,不仅可以在不污染本地环境的情况下进行开发,还可以在项目的其他团队成员的计算机上仅通过一个命令构建相同的环境!