【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加载数据卷,指定名称数据卷并赋予容器内路径
# 最后使用镜像进行容器构建
相关推荐
SeaDhdhdhdhdh2 小时前
MCP Server 搭建与使用指南
java·ai·agent·mcp
李姆斯3 小时前
为啥Agent在coding表现这么好,但是在别的领域就是差的不少?
前端·agent·ai编程
YH55269843 小时前
GPT‑5.6 Sol 原本支持 1M 上下文,Codex 现已放开此前限制,如何看待这次调整?
java·jvm·人工智能·gpt·算法·chatgpt
AI_小站3 小时前
刚面完百度的 Agent 开发岗,我才发现:世界就是个巨大的草台班子
java·开发语言·人工智能·spring·百度·langchain
许彰午4 小时前
03-三种开发模式
java·架构
涟漪海洋4 小时前
创建最新的JDK25镜像,非root环境启动
java
Rain的Java大神之路5 小时前
短信接口被狂刷怎么处理
java·运维·后端·web安全·面试·架构·xss
鱼与宇5 小时前
前端Web(html+css+js+vue3)
前端
孙克旭_5 小时前
Docker 镜像构建|Vue+SpringBoot+Go 多语言项目 Dockerfile 案例
linux·运维·vue.js·spring boot·docker·dockerfile
2602_959960925 小时前
谢飞机面试大厂:Spring Boot、JVM、Redis、Kafka、微服务与音视频搜索场景求生实录
java·jvm·spring boot·redis·面试题