1⃣️Docker底层原理
Docker是一个Client,Server结构的系统,Docker的守护进行运行在主机上。通过Socket从客户端访问。Docker-Server接收到Docker-Client的指令,就会执行这个命令。简单的来说Docker就是主机当中的一个虚拟机,但是Docker所占用的资源特别小。
2⃣️帮助命令
帮助文档地址:docker build | Docker Documentation
docker -version
docker info
docker 命令 -info # 万能命令
sudo systemctl start docker # 启动docker
3⃣️镜像命令
docker images # 查看docker所有镜像
docker search # 搜索镜像
docker pull 镜像名[:tag] # 下载镜像,tag为版本号
docker rmi -f 镜像id # 删除镜像
docker rmi -f $(docker images -aq) # 删除全部的容器
4⃣️容器命令
build dockerfile文件 :
docker build -t pywb:0 -f dockerfile-1 .
启动容器的例子:
docker run -d -p 8080:8080 -p 9000:9000 pywb:0
启动容器:
docker run[可选参数] image
# 参数说明
--name="Name" 容器名字 tomcato1 tomcato2,用来区分容器
-d 后台方式运行
-it 使用交互方式运行,进入容器查看内容
-p 指定容器的端ロ -p 主机端口:镜像端口
-p 随机指定端口
查看正在运行的容器:
docker ps
查看容器日志:
docker logs -f -t --since="2018-02-08" --tail=100 CONTAINER_ID
查看最近30分钟的日志;
docker logs -f <CONTAINER>
实时显示日志;
退出容器:
exit # 直接容器停止并退出
Ctrl + P +Q # 容不停止退出
删除容器:
docker rm 容器id # 删除指定的容器,强制删除rm -f
docker rm -f $(docker ps -aq) # 删除所有的容器
启动和停止容器:
docker start 容器id # 启动容器
docker restart 容器id # 重启容器
docker stop 容器id # 停止当前正在运行的容器
docker ki11 容器id # 强制停止当前容器
5⃣️进入当前运行的容器
docker exec -it 容器id /bin/bash # 进入容器后开启新的终端,可以操作
docker attach 容器id # 进入容器后使用正在运行的终端
docker cp 容器id:容器内路径 目的的主机路径 #将容器内部文件拷贝到主机(主机中输命令)
作者使用命令日志:
在/git/website/website文件夹创建dockerfile-python之后
(base) [root@iZf8z4d8689ikiterw3og7Z ~]# cd /git/website/website
(base) [root@iZf8z4d8689ikiterw3og7Z website]# docker build -f dockerfile-python -t python
(base) [root@iZf8z4d8689ikiterw3og7Z website]# docker run -d -p 81:81 --name python python:3.7
(base) [root@iZf8z4d8689ikiterw3og7Z website]# docker ps
(base) [root@iZf8z4d8689ikiterw3og7Z website]# docker exec -it python /bin/bash
root@a050c0dc2feb:/# nohup python manage.py runserver 0.0.0.0:81 &
root@a050c0dc2feb:/# nohup: ignoring input and appending output to 'nohup.out'
即可访问使用81端口访问docker内挂载的网站