Ubutun部署docker,并使用docker部署springboot项目,关闭软件可继续访问

工具为xftp和xshell。

我这里使用的Ubuntu的版本是20.04的,话不多说,我们来直接上代码。

首先我们最好使用管理员权限进行操作,预防操作时遇到权限问题。

部署docker

登入管理员

不登入管理员也没关系。

java 复制代码
su

根据提示输入密码,进入管理员权限。

更新软件包

java 复制代码
sudo apt update
java 复制代码
sudo apt upgrade

此过程会有些时间长,遇到Y/N时输入y即可。

安装依赖

java 复制代码
apt-get install ca-certificates curl gnupg lsb-release

添加docker密钥

java 复制代码
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

显示ok即可。

添加docker软件源代码

java 复制代码
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

如果出现错误,请登入管理员权限进行操作。

安装docker

java 复制代码
apt-get install docker-ce docker-ce-cli containerd.io

配置用户组

默认情况下,只有root用户和docker组的用户才能运行Docker命令。我们可以将当前用户添加到docker组,以避免每次使用Docker时都需要使用sudo,需重新登录可使用。

java 复制代码
sudo usermod -aG docker $USER

到此我们docker就安装完毕了,我们需要验证一下。

启动docker

java 复制代码
systemctl start docker

安装工具

java 复制代码
apt-get -y install apt-transport-https ca-certificates curl software-properties-common

重启docker

java 复制代码
service docker restart

验证是否成功

java 复制代码
sudo docker run hello-world

运行后出现下图的状态,代表着我们安装没有问题!!!

查看版本号

java 复制代码
sudo docker version

下面这是关于docker的版本信息。

查看镜像

java 复制代码
sudo docker images

部署springboot项目

首先我们把打包好的jar包放到自己想放的ubuntu文件夹里。

创建dockerfile文件

注意这个文件名不要写错,可以大写。

打开xshell,进入此文件夹,输入ls查看。我这边是已经创建好了。

输入下面代码,创建dockerfile文件

java 复制代码
vim dockerfile

按 i 键进行编译。

输入下面内容

java 复制代码
FROM openjdk:11.0.11-jdk-slim

WORKDIR /app

COPY yungongju-0.0.1-SNAPSHOT.jar /app


CMD ["java", "-jar", "yungongju-0.0.1-SNAPSHOT.jar"]

根据自己的进行修改

  • FROM 是java项目对应的jdk版本,使用docker,不需要在部署jdk了
  • WORKDIR 指定构建镜像时使用的目录
  • COPY 将jar包复制到容器中对应的文件中 ,示例 令: nohup java -jar xxx.jar & (nohup表示即使当前连接关闭也执行该命令, & 表示放到后台运行。**

构建镜像

java 复制代码
docker build -t yungongju.

注意:yungongju为镜像名称,可自行定义,后2 面空格和点不要忘记加。

启动容器

java 复制代码
docker run -p 8089:8089 yungongju

8089为端口号 yungongju为镜像。

小白路漫漫,让我们一起加油!!!

相关推荐
寂柒11 小时前
信号量——基于环形队列的生产消费模型
linux·ubuntu
changhong198613 小时前
如何在 Spring Boot 中配置数据库?
数据库·spring boot·后端
月月玩代码15 小时前
Actuator,Spring Boot应用监控与管理端点!
java·spring boot·后端
Java程序之猿16 小时前
SpringBoot + camel+IBM MQ实现消息队列处理
java·spring boot·mybatis
Highcharts.js16 小时前
Highcharts React v4.2.1 正式发布:更自然的React开发体验,更清晰的数据处理
linux·运维·javascript·ubuntu·react.js·数据可视化·highcharts
青木96016 小时前
封装成开箱即用的docker
docker·容器
z_鑫16 小时前
SpringCloud FeignClient 中 Bean 重复注册冲突解决方案解析
java·spring boot·spring cloud
Amour恋空17 小时前
SpringBoot+Lombok+Logback实现日志
spring boot·后端·logback
孫治AllenSun17 小时前
【线程池】优化等待队列和拒绝策略
java·spring boot·spring cloud
爱丽_17 小时前
Docker 从原理到项目落地(镜像 / 容器 / 网络 / 卷 / Dockerfile)
网络·docker·容器