Docker

2/19/2023 server

# 1.启动docker(背诵)

systemctl start docker
1

# 2.是否安装成功(背诵)

docker version
1

# 3.拉取远程hello-world镜像并运行(背诵)

docker run hello-world
1

# 4.查看镜像(背诵)

docker images
1

# 5.docker配置镜像(了解)

sudo mkdir -p /etc/docker
sudo tee /etc/docker/deamo.json <<-'EOF'
{
	"registry-mirros":["https://qiyb9988.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
1
2
3
4
5
6
7
8

# 6.docker系统信息

docker info 
1

# 7.docker images含义

REPOSITORY 	镜像仓库源
TAG			镜像的标签
IMAGE ID	镜像的id
CREATED		镜像的id
SIZE		镜像的大小
-a 列出所有镜像
-q 只显示id
1
2
3
4
5
6
7

# 8.搜索镜像

docker search mysql --filter=STars=3000
1

# 9.下载镜像指定版本

docker pull mysql:5.7
1

# 10.docker删除命令

docker rmi -f e73346bdf465
1

# 11.新建并启动容器

docker run centos
--name=“name” 容器名字
-d 后台方式运行
-it 交互方式
-p 指定容器端口 主机端口:容器端口
1
2
3
4
5

# 12.启动并进入容器

docker run -it centos /bin/bas
1

# 13.推出容器

exit
1

# 14.列出运行中的容器、

docker ps
-a带历史容器
-q只显示容器编号
-n=?显示最近创建的容器
1
2
3
4

# 15.不停止容器推出

ctrl+p+q
1

# 16.删除容器

docker rm 容器id
docker rm -f $(docker ps -aq)删除所有容器
docker ps -a -q |xargs docker rm 删除所有容器
1
2
3

# 17.启动容器

docker start 容器id
1

# 18.重启容器

docker restart 容器id
1

# 19.停止容器

docker stop 容器id
1

# 20.强制停止容器

docker kill 容器id
1

# 21.后台启动

docker run -d 镜像名
容器发现没有应用会自动停止
1
2

# 22.查看日志

docker logs
docker logs -ft --tail 10 容器id
-t显示时间戳
-f展示最新的日志
--tail 展示条数
1
2
3
4
5

# 23.查看容器进程信息

docker top 容器id
1

# 24.查看镜像元数据

docker inspect 容器id
1

# 25.进入当前运行的容器

docker exec -it 容器id bashshell 开启新终端
docker attacth 容器id /bin/bash 正在执行当前的代码
1
2

# 26.容器拷贝到主机

docker cp 容器id:/路径 本机路径
1

# 27.查看docker内存

docker stats
1

# 28.挂在文件

docker run -it -v 本地路径:容器路径
docker inspect 容器id 查看挂载信息
1
2

# 29.挂载类型

-v 容器内路径	匿名挂在
-v 具名:容器内路径	具名挂载
-v 宿主机路径:容器内路径	路径挂载
1
2
3

# 30.读写权限

-v 容器内路径:ro rw 只读或读写权限
1

# 31.dockerfile

from centos #基础镜像
mintainer kuangshen<1143520492@qq.com>#谁写的
run yum -y install vim#docker运行命令
add jdk-8u11-linux-x85.tar.gz /user/local#步骤,tomcat镜像,tomcat他所报
mkdir #镜像工作目录
volume["volume01","volume02"]#挂载位置
expose 80#暴露端口
run #运行
cmd echo "-------end---------"#开启后运行的
cmd /bin/bash
cmd ["ls","-a"]#执行多条命令逗号分割
entrypoint #追加命令
onbuild #触发指令
copy readme.txt /usr/local/readme.txt#类似add,将我们文件拷贝到景象中
env mypath /usr/local#构建的时候设置环境变量
workdir $mypath
docker build -f dockerfile -t 镜像名:[tag]#构建镜像
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# 32.docker构建过程

docker history 镜像id
1

# 33.docker网络

docker run -d -p --name tomcat03 --link tomcat02 tomcat
docker exec -it tomcat03 ping tomcat02 #--link就是在host里加了一行代码
docker exec -it tomcat02 ping tomcat03 #ping不通
1
2
3

# 34.docker桥接

docker network create --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet
不同的集群可以创建不同的网络
1
2

# 35.docker swarm集群

docker node ls 查看节点
1
更新时间: 2023-02-23 10:36