Docker学习笔记(第一阶段)
一、安装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