docker安装和启动

检查状态:
检查docker版本
docker -v
检查docker版本(更详细)
docker version
查看服务端详细信息
docker info
docker服务端管理:
查看docker服务端状态
systemctl status docker
启动docker服务端
systemctl start docker
停止docker服务端
systemctl stop docker
重启docker服务端
systemctl restart docker
开机启动docker服务端
systemctl enable docker

image 镜像操作

查看镜像
docker images centos
查看仓库名称包含centos的镜像
docker images -q
查看镜像列表 只显示id
搜索镜像
docker search 仓库名称关键字
hub.docker.com 官方镜像中心网址搜索(推荐)
拉取镜像
docker pull 仓库名称:标记
省略标记
下载镜像的latest版本
删除镜像
docker rmi 【镜像仓库:标记】或【镜像ID】
强制删除
docker rmi -f 【镜像仓库:标记】或【镜像ID】
删除全部镜像
docker rmi **docker images -q**

container 容器操作

查看容器
docker ps
查看运行时容器列表
docker ps -a
查看所有的容器列表
创建容器
docker run [选项] 镜像:标记 [命令]
选项
-it
交互式运行
运行容器后,会登录到容器中
通过exit退出 退出后容器关闭
-d
守护式运行
后台运行容器
进入容器:
docker exec -it 容器名称 bash
通过exit退出 退出后容器继续运行
—name 名称
定义容器名称
-p 宿主机端口:容器端口
将宿主的端口映射到容器
-v 目录挂载
-v 宿主机上的目录:容器上的目录
停止、启动、重启
docker stop
docker start
docker restart
文件拷贝
docker cp 宿主机上的文件 容器名称:/容器中的目录
docker cp 容器名称:/容器中上的文件 宿主机的目录
目录挂载
docker run -id —name=名称 -v 宿主机目录:容器目录 镜像
删除容器
docker rm 容器
docker rm -f 容器
删除所有容器
docker rm**docker ps -a -q**
查看容器日志
docker logs -f 容器名称(或容器ID)
设置容器自启动
docker update —restart always 容器名称

数据卷管理

数据卷是一个可供一个或多个容器使用的特殊目录,一般是在宿主机的某个特定的目录下
数据卷管理命令
docker volume create 卷名称
创建一个数据卷
docker volume inspect 卷名称
显示一个或多个指定数据卷的详细信息
docker volume ls
查看所有的数据卷
docker volume prune
删除所有未使用的数据卷
docker volume rm 卷名称
删除一个或多个指定的数据卷
演示挂载数据卷
docker volume create html
创建名称为html的数据卷
docker volume inspect html
查看html数据卷的详细信息
docker run -id —name=my-nginx -p 8888:80 -v html:/usr/share/nginx/html nginx
创建并运行nginx容器,并将html数据卷挂载到容器的指定目录

备份与迁移

镜像的备份
docker save -o 文件名称 镜像名称:标记
docker save -o mynginx.tar mynginx
将mynginx镜像保存为一个压缩包
镜像的加载
docker load -i 文件名称
docker load -i mynginx.tar
加载指定压缩包中的镜像

Dockerfile构建镜像

概念:
Dockerfile是一个脚本文件,在里面定义构建镜像的命令和参数
使用docker build命令根据这个脚本文件可以快速构建镜像
61b745ff6376897124446d41.png

docker-compose

  1. 容器编排技术<br /> 可以通过一个脚本,描述多个容器,可以实现容器的统一管理和编排<br /> 企业 比较火的容器编排技术** kubernetes (K8S)**<br /> 常用命令:<br /> **docker-compose up -d** 后台启动所有描述的容器<br /> **docker-compose stop ** 停止所有描述的容器<br /> **docker-compose down **停止并删除所有描述的容器

Registry镜像中心

**搭建私有镜像**中心<br />        拉取注册中心的镜像 Registry<br />    **上传镜像**到私有注册中心<br />        镜像中心的信任列表<br />        docker tag 注册中心地址/镜像名称:版本<br />        docker push 注册中心地址/镜像名称:版本

附录:

命令操作可能涉及到的命令:

修改文件/目录的权限的命令:
命令格式: chmod u=xxx,g=xxx,o=xxx 文件的名称
u: user属主
g: group属组
o: other其他
- : 可以进行占位
+ : 可以添加新的权限
命令:chmod u=rwx,g=rwx,o=rwx test/

数字表示权限法:
r: 4 w : 2 x: 1
命令: chmod 764 文件名称
7 = 4 + 2 + 1
6 = 4 + 2
1 = 1
命令:chmod 761 test/

查看防火墙状态:
systemctl status firewalld s 或者: firewall-cmd —state
systemctl stop firewalld 关闭防火墙
systemctl start firewalld 启动防火墙
systemctl restart firewalld 重启防火墙
systemctl enable firewalld 设置开机自启动(默认)
sytemctl disable firewalld 停止并禁用开机启动
允许某个端口访问: 公布端口
注意: —permanent 意思是:永久生效
firewall-cmd —zone=public —add-port=80/tcp —permanent
配置完端口后,需要重启防火墙
// 展示防火墙中公布的所有端口
firewall-cmd —zone=public —list-ports
// 删除防火墙中公布的端口
firewall-cmd —zone=public —remove-port=80/tcp —permanent