以下是 Docker 的一些基础操作总结,涵盖安装、镜像、容器、网络、数据管理等常见任务。
Docker 基础操作
1. 安装 Docker
- Docker 官方安装指南 提供了各操作系统(Windows、macOS、Linux)的详细步骤。
- Linux(Ubuntu)安装示例:
1 2 3 4 5 6 7sudo apt-get update sudo apt-get install apt-transport-https ca-certificates curl software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" sudo apt-get update sudo apt-get install docker-ce sudo systemctl status docker # 检查 Docker 是否安装成功
2. 镜像操作
-
搜索镜像:
1docker search <镜像名>示例:
docker search ubuntu -
下载镜像:
1docker pull <镜像名>:<标签>示例:
docker pull ubuntu:latest -
查看本地镜像:
1docker images -
删除镜像:
1docker rmi <镜像ID>
3. 容器操作
-
运行容器:
1docker run -d -p <宿主端口>:<容器端口> <镜像名>示例:
docker run -d -p 8080:80 nginx在后台运行一个 Nginx 容器,监听宿主机的 8080 端口。 -
查看运行中的容器:
1docker ps -
查看所有容器(包括已停止的):
1docker ps -a -
停止容器:
1docker stop <容器ID> -
启动容器:
1docker start <容器ID> -
删除容器:
1docker rm <容器ID> -
进入正在运行的容器:
1docker exec -it <容器ID> /bin/bash示例:
docker exec -it my_container /bin/bash进入容器的交互式 shell。 -
查看容器日志:
1docker logs <容器ID> -
查看容器详细信息:
1docker inspect <容器ID>
4. 容器网络
-
查看网络:
1docker network ls -
创建自定义网络:
1docker network create <网络名>示例:
docker network create mynetwork -
运行容器并连接到网络:
1docker run -d --network <网络名> <镜像名>示例:
docker run -d --network mynetwork nginx
5. 数据管理(挂载卷)
-
挂载数据卷:
1docker run -v <宿主目录>:<容器目录> <镜像名>示例:
docker run -d -v /mydata:/data nginx将宿主机的/mydata目录挂载到容器的/data目录。 -
查看所有卷:
1docker volume ls -
删除卷:
1docker volume rm <卷名>
6. Dockerfile 构建镜像
-
编写
Dockerfile: 创建一个名为Dockerfile的文件,并添加以下内容:1 2 3 4 5 6 7 8 9 10 11# 使用基础镜像 FROM ubuntu:latest # 安装一些软件 RUN apt-get update && apt-get install -y vim # 复制文件到容器 COPY ./myfile.txt /usr/src/myfile.txt # 运行时命令 CMD ["echo", "Hello World!"] -
构建镜像:
1docker build -t my-custom-image . -
查看构建的镜像:
1docker images
7. Docker 容器导入/导出
-
保存容器为镜像:
1docker commit <容器ID> <镜像名> -
导出容器:
1docker export <容器ID> > container.tar -
导入容器:
1docker import < container.tar
8. 常见问题与调试
-
查看容器 CPU 和内存使用情况:
1docker stats -
强制停止所有容器:
1docker stop $(docker ps -q) -
删除所有已停止的容器:
1docker rm $(docker ps -a -q)
通过这些基础操作,你可以方便地进行 Docker 容器的创建、运行、管理和调试。根据实际情况,可以进一步探索 Docker Compose、Kubernetes 等工具,来实现更复杂的应用部署和管理。