【容器】docker安装部署及常用命令使用
本文介绍了Docker在CentOS系统上的安装部署和使用方法。主要内容包括:1) 配置yum源并安装Docker,设置开机自启和配置镜像加速器;2) 基本使用操作如拉取镜像、启动容器、进入容器修改内容、提交镜像修改等;3) 镜像的保存、加载和推送至远程仓库;4) 应用部署方式对比,以及使用Dockerfile打包Java应用并构建镜像运行容器的完整流程。文章提供了详细的命令示例,涵盖了Docke
一、安装部署
1、配置yum源
yum install -y yum-utils
yum-config-manager --add-repo
https://download.docker.com/linux/centos/docker-ce.repo
可能会出现以下错误:
[Errno 14] curl#35 - “TCP connection reset by peer”
centos服务器无法正常连接到docker官方的repo地址
多运行几次,默认 Docker 官方源在境外,有时网络会被拦截。
2、安装docker
yum install -y docker-ce docker-ce-cli containerd.io
3、设置为开机自启并立即启动
systemctl enable docker --now
4、配置加速器
mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://2c6fdfdfed044xxxxxxxxx.mirror.swr.myhuaweicloud.com"]
}
EOF
加速器建议使用华为云的(需注册),较为稳定。
华为云-容器镜像服务–镜像资源–镜像中心,点击右上角“镜像加速器”
5、重载配置并重新启动
systemctl daemon-reload
systemctl restart docker
二、开始使用
1、拉取镜像
docker pull nginx:版本名
docker pull nginx
#如不带版本名,默认最近版本nginx:latest
2、查询本地已拉取的镜像
docker images
3、删除已拉取的镜像
docker rmi 镜像名:版本名
docker rmi 镜像id
4、启动容器
docker run -d \ #后台运行
-p 80:80 \ #端口映射
--name 应用名 \ #命名
-v 本地文件目录path:容器内文件目录path \ #文件挂载
--restart=always \ #开机自启
镜像名:版本名
5、查看正在运行的容器
docker ps
6、查看所有的容器
docker ps -a
7、删除正在运行的容器
docker rm -f 容器id
docker rm -f 应用名
8、进入容器内修改内容
docker exec -it 容器id/应用名 /bin/bash
9、提交修改后的镜像
方便于下次启动仍然按照修改后的配置运行,提交到本地仓库
docker commit -a 修改者名字 -m 变化内容 容器id 镜像名:版本名
docker commit -a 修改者名字 -m 变化内容 容器id 镜像id
10、镜像保存
docker save -o 目标文件 镜像名:版本名 /镜像id
docker save 镜像名:版本名 > 目标文件
# 示例
docker save -o abc.tar nginx:v1.0
可将保存的文件传到其他主机上运行,如scp
11、加载镜像
docker load -i abc.tar
docker load < abc.tar
12、推送至远程仓库
其他机器就可通过docker pull拉取镜像
docker tag #打标签
docker push #推送
1> 登录到远程仓库(如华为云或者阿里云个人仓库)
docker login --username=nick3585xxx
crpi-1dxxxwa.cn-hangzhou.personal.cr.aliyuncs.com
#可以直接使用华为云个人仓库,我是一开始使用阿里云的
2> 给需要推送的镜像打标签
docker tag hbnginx:v1.0
crpi-1dxxxwa.cn-hangzhou.personal.cr.aliyuncs.com/reaf_star/nginx:v1.0
3> 推送
docker push
crpi-1dxxxwa.cn-hangzhou.personal.cr.aliyuncs.com/reaf_star/nginx:v1.0
4> 退出登录
docke logout
三、部署应用
1、以前没有docker环境部署应用
- springboot打包成可执行的jar包
- 把jar包上传给服务器
- 服务器运行java -jar
存在的问题:运行应用需要安装依赖环境,当多样应用安装时,都需要安装依赖环境,非常不方便
2、现在有docker环境后部署应用
所有机器都安装Docker,任何应用都是镜像,所有机器都可以运行
3、应用打包-Dockerfile
编辑dockerfile指定应用该如何打包
FROM openjdk:17-jdk #java运行环境
LABEL maintainer=reaf_star #作者
COPY target/*.jar /app.jar #将jar包复制到容器内
ENTRYPOINT ["java","-jar","/app.jar"] #镜像启动命令
4、构建镜像
按照指定目录下dokcerfile里的命令构建自定义的镜像
docker build -t java-demo:v1.0 .
5、根据镜像运行容器
docker run -d -p 8080:8080 java-demo:v1.0
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)