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为镜像。

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

相关推荐
bemyrunningdog1 小时前
Mock数据
linux·运维·ubuntu
ladymorgana1 小时前
【Spring Boot】HikariCP 连接池 YAML 配置详解
spring boot·后端·mysql·连接池·hikaricp
Winner13002 小时前
Debian、Buildroot 和 Ubuntu 都是基于 Linux 的系统区别
linux·ubuntu·debian
GJCTYU3 小时前
spring中@Transactional注解和事务的实战理解附代码
数据库·spring boot·后端·spring·oracle·mybatis
魂尾ac4 小时前
Centos Docker 安装(100%成功)
linux·docker·centos
风象南4 小时前
SpringBoot敏感配置项加密与解密实战
java·spring boot·后端
写不出来就跑路5 小时前
暑期实习感悟与经验分享:从校园到职场的成长之路
java·开发语言·经验分享·spring boot
程序员张39 小时前
Maven编译和打包插件
java·spring boot·maven
Johny_Zhao10 小时前
Docker + CentOS 部署 Zookeeper 集群 + Kubernetes Operator 自动化运维方案
linux·网络安全·docker·信息安全·zookeeper·kubernetes·云计算·系统运维
灵犀学长10 小时前
EasyExcel之SheetWriteHandler:解锁Excel写入的高阶玩法
spring boot·excel