Docker如何入门:
1. 安装Docker
-
Windows/Mac :
下载并安装Docker Desktop,安装完成后启动它,你会看到一个鲸鱼图标,点击可以查看Docker引擎的状态和进行基本操作。
-
Linux :
以Ubuntu为例,使用终端安装Docker Engine:
bashsudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io
安装完成后,启动并加入用户到docker组,以便无需sudo权限就能运行docker命令:
bashsudo systemctl start docker sudo usermod -aG docker $USER newgrp docker
2. Docker基础概念
-
Docker镜像 :
Docker镜像是一个只读模板,用于创建Docker容器。例如,我们从Docker Hub拉取官方的Ubuntu镜像:
bashdocker pull ubuntu docker images
这里的
docker pull
命令用于从远程仓库下载镜像,docker images
命令则列出本地的所有镜像。 -
Docker容器 :
通过镜像创建并运行一个交互式的Ubuntu容器:
bashdocker run -it ubuntu bash
此处
docker run
命令创建并启动了一个新的Ubuntu容器,并进入bash shell。-it
参数表示分配一个伪TTY并打开标准输入。 -
数据卷 :
创建一个使用数据卷的容器,让数据持久化:
bashdocker run -v $(pwd)/data:/app/data -d --name my_container some_image
这里
-v
参数挂载宿主机当前目录下的"data"目录到容器内的"/app/data"路径,数据将在宿主机和容器之间共享。 -
网络配置 :
设置容器对外暴露端口:
bashdocker run -d -p 8080:80 nginx
这里
-p
参数将宿主机的8080端口映射到容器的80端口,外部可通过宿主机的8080端口访问到nginx容器的服务。
3. Dockerfile和构建镜像
创建一个简单的Dockerfile,例如:
Dockerfile
FROM ubuntu:latest
RUN apt-get update && apt-get install -y curl
CMD ["curl", "http://ipinfo.io/ip"]
然后在Dockerfile所在目录下构建镜像:
bash
docker build -t my_custom_image .
4. Docker Compose
创建一个简单的docker-compose.yml文件,用于定义一个多容器应用:
yaml
version: '3'
services:
web:
image: nginx
ports:
- "8080:80"
db:
image: postgres
environment:
POSTGRES_PASSWORD: example
使用Docker Compose启动应用:
bash
docker-compose up -d
接下来,可以深入学习Docker的更高级特性,如Swarm Mode、Kubernetes集成、Docker安全策略等,并结合实际项目进行实践。同时,阅读官方文档、参与社区讨论和观看视频教程,都能加速你的学习进程。