一、Docker简介
1、什么是Docker
Docker 是一个开源的应用容器引擎,让开发者可以打包应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器或 Windows 机器上,也可以实现虚拟化。
2、Docker的核心概念
(1)镜像(Image)
-
相当于一个模板,可以通过这个模板来创建容器服务
-
例如:一个镜像可以包含一个完整的 Ubuntu 操作系统,里面安装了 Apache 和你的应用
-
镜像可以创建多个容器(最终服务运行或者项目运行就是在容器中的)
(2)容器(Container)
-
容器是用镜像创建的运行实例。它可以被启动、开始、停止、删除
-
每个容器都是相互隔离的、保证安全的平台
-
可以把容器看做是一个简易版的 Linux 环境(包括 root 用户权限、进程空间、网络空间等)和运行在其中的应用程序
(3) 仓库(Repository)
-
仓库是集中存放镜像文件的场所
-
最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载
二、CentOS 安装Docker
(1)卸载旧版本(如果之前安装过的话)
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
(2)设置docker仓库需要的安装包
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
(3)设置本地仓库(选择国内阿里云仓库)
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
(4)安装docker免费社区版
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
(5)docker启动
sudo systemctl start docker
(6)判断是否安装成功
docker ps
三、Docker创建Nacos容器并启动
(1)拉取Nacos镜像
docker pull nacos/nacos-server:v2.2.3
拉取镜像失败执行 vi /etc/docker/daemon.json
添加一下内容:
{
"registry-mirrors": [
"https://docker.1panelproxy.com",
"https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com",
"https://docker.m.daocloud.io",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com",
"https://your_preferred_mirror",
"https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.mirrors.ustc.edu.cn",
]
}
然后执行一下命令:
systemctl daemon-reload
systemctl restart docker
(2)运行Nacos容器
docker run -d --name nacos --restart=always -p 8848:8848 -p 9848:9848 -p 9849:9849 -e MODE=standalone -e NACOS_AUTH_ENABLE=false nacos/nacos-server:v2.2.3
四、总结
常用Docker命令
# 搜索镜像
docker search nginx
# 拉取镜像
docker pull nginx:latest
# 查看本地镜像
docker images
# 删除镜像
docker rmi <image_id>
# 运行容器
docker run -d --name nacos --restart=always -p 8848:8848 -p 9848:9848 -p 9849:9849 -e MODE=standalone -e NACOS_AUTH_ENABLE=false nacos/nacos-server:v2.2.3
# 查看运行中的容器
docker ps
# 查看所有容器(包括停止的)
docker ps -a
# 停止容器
docker stop nacos
# 启动容器
docker start nacos
# 进入容器
docker exec -it nacos /bin/bash
# 删除容器
docker rm nacos
# 查看容器日志
docker logs nacos -f