docker 入门教程
1 . Linux 上安装
在各种 Linux 系统上安装 docker 最简单的方法是使用官方脚本自动安装。
安装命如下:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
2. 镜像加速
国内从 DockerHub 拉取镜像会比较慢,此时可以配置镜像加速器。Docker 官方和国内很多云服务商都提供了国内加速器服务,例如:
- Docker 官方中国区 https://registry.docker-cn.com
- 网易 http://hub-mirror.c.163.com
- 中国科学技术大学 https://docker.mirrors.ustc.edu.cn
- 阿里云 < 你的 ID>.mirror.aliyuncs.com
修改/etc/docker/daemon.json 文件,如果没有先建一个即可
sudo vim /etc/docker/daemon .json
修改配置文件内如下:
{ "registry-mirrors": ["https://registry.docker-cn.com"] }
然后重启服务
sudo systemctl daemon-reload sudo systemctl restart docker
3. 镜像常用命令
1.下载镜像
sudo docker pull 镜像名
2. 查看镜像列表
sudo docker image ls docker images
3. 删除镜像
sudo docker image rm 镜像名 sudo docker rmi 镜像名
4.推送镜像
sudo docker push 镜像名
5. 保存镜像
保存一个或多个镜像到一个 tar 归档文件
sudo docker image save 镜像名 -o xxx. tar
6. 加载镜像
从 tar 归档或者标准输入来加载镜像
sudo docker image load 镜像名 -i xxx. tar
7. 构建镜像
从 Dockerfile 构建一个镜像
sudo docker build -t name:tag path
4. 容器的常用命令
1.创建容器 根据镜像创建一个容器
sudo docker container run [OPTIONS] image [ command ] 例如: sudo docker run ubuntu:lastest /bin/echo "Hello world" 表示通过镜像 unbuntu:lastest 启动一个容器,运行 /bin/echo "hello world" 命令,如果本地没有 unbuntu:lastest 镜像,会自动去仓库下载。
2.创建容器的常用参数
参数 描述 -i 交互式创建容器 -t 分配一个伪终端 -d 运行容器到后台 -e 设置环境变量 -p 映射容器端口到主机 -h 设置容器主机名 --link 添加连接到另一个容器 --network 连接容器到一个网络 -v 挂载宿主机目录到容器 --restart 容器退出后的重启策略,默认 no[always|failure] --name 给容器命名
3. 启动容器
启动一个停止的容器 sudo docker container start 容器名 /ID sudo docker start 容器名 /ID
4. 停止容器
停止一个运行的容器 sudo docker container stop 容器名 /ID docker stop 容器名 /ID
5.查看日志
查看运行的容器的日志 sudo docker container logs 容器名 /ID docker logs 容器名 /ID
6. 执行命令
在运行的容器中执行命令 sudo docker container exec -it 容器名 /ID command
7.查看容器列表
sudo docker container ls sudo docker ps sudo docker ps -a
8. 删除一个容器
sudo docker container rm 容器名 /ID docker rm 容器名 /ID
9. 删除数据卷
docker volume prune
10. 创建网桥
docker network create 网桥名 docker network ls
11. 查看容器详细信息
docker inspect 容器名
5. 防火墙常用命令
firewall防火墙 1、查看firewall服务状态 systemctl status firewalld 出现Active: active (running)切高亮显示则表示是启动状态。 出现 Active: inactive (dead)灰色表示停止,看单词也行。 2、查看firewall的状态 firewall-cmd --state 3、开启、重启、关闭、firewalld.service服务 # 开启 service firewalld start # 重启 service firewalld restart # 关闭 service firewalld stop 4、查看防火墙规则 firewall-cmd --list-all 5、查询、开放、关闭端口 # 查询端口是否开放 firewall-cmd --query-port=8080/tcp # 开放80端口 firewall-cmd --permanent --add-port=80/tcp # 移除端口 firewall-cmd --permanent --remove-port=8080/tcp #重启防火墙(修改配置后要重启防火墙) firewall-cmd --reload # 参数解释 1、firwall-cmd:是Linux提供的操作firewall的一个工具; 2、--permanent:表示设置为持久; 3、--add-port:标识添加的端口;