使用docker部署springboot项目到服务器的详细过程

 更新时间:2023年06月15日 16:11:04   作者:scmie  
这篇文章主要介绍了docker部署springboot项目到服务器,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

docker部署springboot demo到vps

docker安装

首先检查docker是否安装
docker version

出现上述界面就是安装成功

如果没有安装docker的话,运行以下命令
删除旧版本的docker

yum remove docker \
    docker-client \
    docker-client-latest \
    docker-common \
    docker-latest \
    docker-latest-logrotate \
    docker-logrotate \
    docker-selinux \
    docker-engine-selinux \
    docker-engine

安装依赖包(centos)

yum install -y yum-utils \
    device-mapper-persistent-data \
    lvm2

安装docker
yum install docker
启动docker

systemctl enable docker
systemctl start docker

查看安装结果
docker version

配置镜像(如果是阿里云的服务器,安装后默认就是阿里云的docker镜像源,可以不用修改)

{
  "registry-mirrors": [
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn"
  ]
}

重启
systemctl restart docker

安装portainer,可视化界面

docker pull portainer/portainer

sudo docker volume create portainer_data

sudo docker run -d -p 8000:8000 -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
出现以下界面说明安装成功了

如果之前安装过,忘记密码,可以进行如下操作
停止正在运行的Portainer

docker stop "id-portainer-container"

运行重置命令

docker run --rm -v portainer_data:/data portainer/helper-reset-password

如果你的Portainer 挂载目录不是 portainer_data 则会提示
Unable to locate /data/portainer.db on disk

查看你的portainer 挂载信息
docker inspect "id-portainer-container"

需要运行的重置命令为:

docker run --rm -v /var/snap/docker/common/var-lib-docker/volumes/c822de987380b92b5372fad6a19fd26bc6748fadf7ca2e404674cd7bfdcaa387/_data:/data portainer/helper-reset-password

如果成功,输出应如下所示:

Password successfully updated for user: admin Use the following password to login: &_4#\3^5V8vLTd)E"NWiJBs26G*9HPl1

重新运行portianer

docker start "id-portainer-container"

下面就是进入主页面,可以进行更改密码

安装mysql

docker pull mysql
#MYSQL_ROOT_PASSWORD后面填写自己的root密码
docker run --name mysql80 -e MYSQL_ROOT_PASSWORD=123456-d mysql
#也可以运行如下命令,自动开启MySQL容器在后台运行
docker run -d --name mysql80 -e MYSQL_ROOT_PASSWORD=123456 --restart always mysql

阿里云安全组放行3306端口

使用navicat连接服务器的mysql
这时会出现错误

进入portainer界面mysql的console界面

mysql -uroot -p
此时连接成功

使用以下命令进行授权所有主机进行访问

# 修改授权,赋予任何主机访问数据库的权限
# mysql8.0以下
GRANT ALL PRIVILEGES ON *.* TO “root”@”%” IDENTIFIED BY '数据库密码' WITH GRANT OPTION;   
GRANT ALL PRIVILEGES ON *.* TO “root”@”%” IDENTIFIED BY '123456' WITH GRANT OPTION;   
mysql8.0以上
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;

navicat连接成功

然后建立数据库
将本地springboot项目打包成jar包
编写dockerfile

FROM openjdk:8
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp 
# 将jar包添加到容器中并更名为app.jar
ADD user.jar app.jar 
# 运行jar包
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

创建docker文件夹,将jar包与Dockerfile移动到该文件夹,进入该文件夹,运行命令:
docker build -t app .
查看镜像
docker images
运行镜像
docker run -d -p 8082:8888 app
访问地址,项目部署成功

到此这篇关于使用docker部署springboot项目到服务器的详细过程的文章就介绍到这了,更多相关docker部署springboot项目到服务器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 通过提前bake Docker镜像加快基础设施的启动速度

    通过提前bake Docker镜像加快基础设施的启动速度

    这篇文章主要介绍了通过提前bake Docker镜像加快基础设施的启动速度的相关资料,需要的朋友可以参考下
    2017-01-01
  • docker desktop实现一分钟部署searxng

    docker desktop实现一分钟部署searxng

    这篇文章主要介绍了docker desktop实现一分钟部署searxng,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • docker-compose如何定义容器的ip

    docker-compose如何定义容器的ip

    这篇文章主要介绍了docker-compose如何定义容器的ip问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • Ubuntu系统下docker Pull镜像错误timeout解决办法

    Ubuntu系统下docker Pull镜像错误timeout解决办法

    最近在用docker搭个开发环境,发现在拉取镜像的时候有点问题,这篇文章主要给大家介绍了关于Ubuntu系统下docker Pull镜像错误timeout的解决办法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-07-07
  • Docker下利用jenkins和docker实现持续交付

    Docker下利用jenkins和docker实现持续交付

    这篇文章主要介绍了利用jenkins和docker实现持续交付功能,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-05-05
  • docker-compose部署zabbix+grafana的实现

    docker-compose部署zabbix+grafana的实现

    这篇文章主要介绍了docker-compose部署zabbix+grafana的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-11-11
  • Docker自动部署Apache Tomcat的方法

    Docker自动部署Apache Tomcat的方法

    这篇文章主要介绍了Docker自动部署Apache Tomcat的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • 使用Docker部署前后端分离项目的完整步骤

    使用Docker部署前后端分离项目的完整步骤

    刚刚接触基础的运维工作,采用的是docker部署的方式,下面这篇文章主要给大家介绍了关于使用Docker部署前后端分离项目的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-01-01
  • CentOS7 Docker防火墙的简单配置教程

    CentOS7 Docker防火墙的简单配置教程

    这篇文章主要给大家介绍了关于CentOS7 Docker防火墙的简单配置方法,以及总结了docker在centos7下的一些坑,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2017-12-12
  • docker-compose安装mongoDB全过程

    docker-compose安装mongoDB全过程

    这篇文章主要介绍了docker-compose安装mongoDB全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01

最新评论