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

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

相关推荐
木雷坞6 分钟前
Docker Hub、GHCR、Quay 混在一起后,镜像源要分开测
运维·docker
qq_4523962314 分钟前
第十五篇:《Docker 与 Kubernetes 集成:从 Swarm 到 K8s 的迁移》
docker·容器·kubernetes
YDS8291 小时前
DeepSeek RAG&MCP + Agent智能体项目 —— 动态决策策略的接口对接
java·spring boot·ai·agent·spring ai·deepseek
lpfasd1231 小时前
docker中默认网络的作用和注意事项
网络·docker·容器
淘源码A1 小时前
专科医院云HIS系统源码:技术栈包括SpringBoot、Angular、MySQL等
spring boot·后端·源码·云his·医院信息系统·医院his系统
EntyIU1 小时前
DOCKER_CHEATSHEET
运维·docker·容器
小马爱打代码1 小时前
基于 SpringBoot 的微服务文件上传下载组件设计与实现
spring boot·后端
颜淡慕潇1 小时前
低成本搭建鸿蒙PC运行环境:基于 Docker 的 x86_64 服务器
服务器·docker·harmonyos
SilentSamsara2 小时前
Python 与 Docker:多阶段构建、最小镜像与健康检查
运维·开发语言·python·docker·中间件·容器
情绪总是阴雨天~2 小时前
Dockerfile 完全指南:从指令详解到实战构建
docker