通过docker部署jar包-linux
·
目录
一、CentOS系统安装步骤
1.1、卸载旧版本(可选)
如果之前安装过旧版本Docker,可以先卸载。
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
1.2、安装必要的依赖和工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
1.3、配置Docker的Yum仓库
建议使用国内镜像源以加速下载,例如阿里云
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
1.4、安装Docker引擎
sudo yum install -y docker-ce docker-ce-cli containerd.io
二、安装后的通用配置
2.1、设置镜像地址-很重要!很重要!很重要
安装完后默认官方镜像地址,国内经常调不通,国内众多镜像也不通,推荐使用阿里云镜像,
获取地址:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
修改配置文件
/etc/docker/daemon.json
{
"registry-mirrors": ["https://youaddress.mirror.aliyuncs.com"]
}
保存后重新加载配置并重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
2.2、启动Docker并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
2.3、验证安装
运行一个测试容器,如果看到"Hello from Docker!"的提示则说明安装成功
sudo docker run hello-world
2.4、配置用户权限(可选但推荐)
将当前用户加入docker组,之后运行Docker命令就无需每次都加sudo。
sudo usermod -aG docker $USER
注意:执行此命令后,你需要注销并重新登录,或者重启系统,才能使组权限生效。
三、使用Dockerfile构建自定义镜像
这是一种标准化且易于维护的方式。
3.1、准备Dockerfile
在你的Jar包同级目录下,创建一个名为Dockerfile的文件(没有后缀),内容如下
# 指定基础镜像。根据你的项目需求选择Java版本,例如openjdk:8, openjdk:11, openjdk:17
FROM openjdk:11
# 在镜像中创建一个工作目录
WORKDIR /app
# 将宿主机的jar包复制到镜像的工作目录中,并为其重命名(这里命名为app.jar)
COPY your-jar-file-name.jar /app/app.jar
# 声明容器运行时对外暴露的端口,此端口需要与你的Spring Boot应用配置的端口一致
EXPOSE 8080
# 指定容器启动时运行的命令
ENTRYPOINT ["java", "-jar", "app.jar"]
请务必将your-jar-file-name.jar替换为你实际的Jar包文件名。
3.2、构建Docker镜像
在Dockerfile所在的目录执行以下命令。-t参数用于给镜像取名和打标签,注意最后有一个点,表示使用当前目录的Dockerfile
docker build -t my-java-app:1.0 .
3.3、运行Docker容器
使用刚才构建的镜像来启动一个容器
docker run -d --restart=always --name my-app-container -p 8080:8080 my-java-app:1.0
-
–d:让容器在后台运行。
-
–restart=always:设置容器随Docker服务自动启动,如果容器意外退出也会自动重启。
-
–name:为容器指定一个名字,方便管理。
-
-p 8080:8080:进行端口映射,将宿主机的8080端口映射到容器的8080端口。你可以根据实际情况修改宿主机端口。
更多推荐


所有评论(0)