Docker学习笔记(第一阶段)
强烈推荐:遇见狂神说的个人空间_哔哩哔哩_Bilibili
一、安装docker
1.步骤
# 1.卸载旧的docker版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
# 2.需要的安装包
yum install -y yum-utils
# 3.设置镜像仓库
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo # 默认是国外的
yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 推荐使用阿里云镜像
# 4.更新yum
yum makecache fast
# 5.安装docker最新版 ce指的是社区版 ee是企业版
yum install docker-ce docker-ce-cli containerd.io
# 6.启动docker
systemctl start docker
# 7.使用 docker version 来查看是否启动
# 8.测试hello world docker run hello-world

# 9.注意 当使用docker run XXX 来运行的时候, 如果在本机镜像里没有找到对应的(XXX)镜像,则会去docker hub 下载下来。 # 10.查看下载的镜像 docker images
2.附docker官网和帮助文档
官网地址:Empowering App Development for Developers | Docker
帮助文档:

3.docker run 流程

4.重要
4.1 我们有了镜像才可以创建容器!!!
4.2 容器是通过镜像创建的
二、Docker 常用命令
1.帮助命令
docker version #查看docker版本 docker info #显示docker的系统信息,包括镜像和容器的数量 docker 命令 --help # 帮助命令
2.镜像命令
2.1、查看镜像命令
docker images #查看全部镜像命令

docker images --help #查看镜像命令帮助

docker images -a #查看全部镜像

docker images -q #仅仅显示镜像的id 经常用到

2.2、搜索镜像命令
docker search XXX #搜索镜像命令
# 以搜索 mysql 镜像为例 docker search mysql

docker search --help #查看搜索镜像命令的全部帮助

docker search mysql --filter=STARS=5000 #搜索stars为5000的mysql镜像 --filter 为过滤

2.3、下载镜像命令
docker pull XXX #下载镜像命令 默认下载最新版本 docker pull XXX:[tag] # 下载指定版本镜像
docker pull --help #下载镜像命令的查看帮助

docker pull mysql #下载mysql镜像 docker pull mysql:5.7 #下载指定版本的mysql镜像
2.4、删除镜像命令
docker rmi XXX #删除镜像
docker rmi --help #查看帮助 docker rmi -f [id、name....] #通过id等删除

docker rmi -f $(docker images -aq) #删除全部镜像命令
2.5、提交镜像命令(commit)
docker commit -a="作者" -m="提交的信息描述" 容器id 目标镜像名:[TAG] #例子: docker commit -a"ljy" aaa aaa01:1.0
3.容器命令
3.1、说明
我们有了镜像才可以创建容器!!!
3.2、新建容器并启动
docker run [可选项] image
#可选项说明
--name="Name" #容器名字
-d #后台启动容器
-it #交互方式 进入容器
-P #指定容器端口(大P)
-P 主机端口:容器端口(常用)
-P #随机指定(小p)
# 测试 启动并进入容器 [root@Ljy01 ~]# docker run -it centos /bin/bash [root@e66e15903e3a /]#
#退出容器并停止 exit #退出容器但不停止容器运行 ctrl+p+q [root@e66e15903e3a /]# exit exit [root@Ljy01 ~]# ^C
#进入容器命令 docker exec -it 容器名 /bin/bash
# 查看当前正在运行的容器 docker ps

# 删除容器 docker rm 容器id #启动容器 docker start id #重启容器 docker restart id #停止容器 docker stop id #杀掉容器 docker kill id
三、练习:安装Nginx
1.搜索Nginx
docker search nginx

2.下载镜像
docker pull nginx

3.启动镜像
docker run -d --name nginx01 -p 3344:80 nginx # -d 代表使用后台启动 # --name 代表我们自己给他的命名 这样如果我们启动多个nginx就可以区分 # -p 设置一个端口 # 3344 代表外网的端口号 # 80 nginx默认的端口号 # 3344:80 这样写 我们就可以使用3344访问docker的80

4.测试
curl localhost:3344

注意:外网访问dockek 端口暴露


四、可视化
1.工具
1.1 portainer
是什么?是一个docker 图形化管理攻击
# 安装 [root@Ljy01 ~]# docker run -d -p 8088:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer




2.2 rancher










