【docker】docker部署java web项目

docker部署java web项目

Docker学习

一、docker操作

centos及docker设置

entos yum 设置

复制代码
# 修改yum镜像源
yum-config-manager \
    --add-repo \
   https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
   
 # 关闭防火墙
 systemctl stop firewalld

# 禁用防火墙
  systemctl disable firewalld

配置docker镜像加速器

复制代码
1. 安装/升级Docker客户端推荐安装1.10.0以上版本的Docker客户端,参考文档docker-ce
2. 配置镜像加速器针对Docker客户端版本大于 1.10.0 的用户您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://66eankq3.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

二、image 镜像操作

拉镜像

镜像网址:hub.docker.com

centos7拉镜像代码: docker pull redis

导出镜像

复制代码
docker save -o redis.tar redis:latest
docker save -o redis.tar redis

删除本地镜像

复制代码
docker rmi redis:latest

加载本地镜像

复制代码
docker load -i redis.tar

三、container 容器操作

复制代码
# 查看所有容器
docker ps -a

Nginx容器示例

复制代码
docker run --name mynginx -d -p 80:80 nginx

--name 命名
-d 后台运行容器:守护进程的方式进行,退出命令窗口不会停止
-p 端口 宿主机端口:容器端口 

Redis容器示例

docker数据卷的使用

可以达到数据共享的目的




自定义镜像

构建镜像

实践代码

编写Dockerfile

制作Docker镜像

创建数据卷

powershell 复制代码
# 创建数据卷
[root@YCSPJ-GG-kz-2 ~]# docker volume create yc6quan_jar
yc6quan_jar
[root@YCSPJ-GG-kz-2 ~]# 
[root@YCSPJ-GG-kz-2 ~]# 
[root@YCSPJ-GG-kz-2 ~]# 
# 查看创建的数据卷
[root@YCSPJ-GG-kz-2 ~]# docker volume ls
DRIVER    VOLUME NAME
local     yc6quan_jar
[root@YCSPJ-GG-kz-2 ~]# 
[root@YCSPJ-GG-kz-2 ~]# 
# 查询数据卷对应的宿主机路径
[root@YCSPJ-GG-kz-2 ~]# docker volume inspect yc6quan_jar
[
    {
        "CreatedAt": "2024-03-11T11:29:30+08:00",
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/data/docker/volumes/yc6quan_jar/_data",
        "Name": "yc6quan_jar",
        "Options": {},
        "Scope": "local"
    }
]

运行容器

powershell 复制代码
 docker run -d -p 58080:8080 --name yc6quan_jar_2024v1 -v yc6quan_jar:/app  yc6quan_jar:v1.0 

# -d 后台运行
# -p 开放端口
# --name 容器名字
# -v加载数据卷,指定名称数据卷并赋予容器内路径
# 最后使用镜像进行容器构建
相关推荐
寻星探路3 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
崔庆才丨静觅5 小时前
hCaptcha 验证码图像识别 API 对接教程
前端
曹牧5 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
passerby60616 小时前
完成前端时间处理的另一块版图
前端·github·web components
掘了6 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
崔庆才丨静觅6 小时前
实用免费的 Short URL 短链接 API 对接说明
前端
崔庆才丨静觅6 小时前
5分钟快速搭建 AI 平台并用它赚钱!
前端
爬山算法6 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
kfyty7256 小时前
集成 spring-ai 2.x 实践中遇到的一些问题及解决方案
java·人工智能·spring-ai