网站首页 > 技术文章 正文
一、tomcat
# 拉取 tomcat 镜像
docker pull tomcat
# 启动容器
docker run -d -p 8080:8080 \
--name tomcat \
-v /opt/tomcat/webapps:/usr/local/tomcat/webapps \
-v /opt/tomcat/logs:/usr/local/tomcat/logs \
tomcat
注意,新版 tomcat 的 webapps 下是没有东西的,想要访问 tomcat 默认的首页,需要将 webapps.dist 目录下的内容拷贝到 webapps 下。
二、nginx
这个实例与上面的不同之处在于,我们想要挂载 nginx 的配置文件,而这些配置文件本身是在容器中存在的,如果我们直接使用 -v 挂载将导致这些数据的丢失,因此我们可以先将这些数据复制出来再挂载。
# 创建要挂载的目录
mkdir -p /opt/docker/nginx/conf
# 启动容器并将配置文件与html目录数据拷贝出来
docker run -d --name liwy-nginx nginx
docker cp \
liwy-nginx:/etc/nginx/nginx.conf \
/opt/docker/nginx/conf/
docker cp \
liwy-nginx:/etc/nginx/conf.d \
/opt/docker/nginx/conf/
docker cp \
liwy-nginx:/usr/share/nginx/html \
/opt/docker/nginx/
# 删除容器再重新启动并挂载目录
docker rm -f liwy-nginx
docker run -d -p 80:80 \
--name liwy-nginx \
--restart=always \
--privileged=true \
-v /opt/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /opt/docker/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /opt/docker/nginx/log:/var/log/nginx \
-v /opt/docker/nginx/html:/usr/share/nginx/html \
nginx
三、redis
# 创建要挂载的配置文件目录,
# 并将 redis.conf 文件放到该目录下
mkdir -p /opt/docker/redis/conf
cd /opt/docker/redis/conf
wget https://raw.githubusercontent.com/redis/redis/7.2/redis.conf
# 启动容器
docker run -d -p 6379:6379 \
--restart=always \
--name liwy-redis \
--privileged=true \
-v /opt/docker/redis/conf:/etc/redis \
-v /opt/docker/redis/data:/data \
-v /etc/localtime:/etc/localtime \
redis:7.2.4 redis-server /etc/redis/redis.conf
redis 配置文件可以从 https://redis.io/docs/management/config/ 下载,下载后按需修改即可。
四、部署 Springboot 项目
1. 准备一个 Springboot 项目 jar 包:
liwy-springboot-1.0-SNAPSHOT.jar
2. 编写 Dockerfile 脚本
# 使用基础的 Java 17 镜像
FROM openjdk:17
# 镜像描述信息
LABEL author="liwy"
LABEL version="1.0"
LABEL description="liwy-springboot project."
# 设置工作目录
WORKDIR /opt/liwy-springboot/
# 设置环境变量来指定时区
ENV TZ=Asia/Shanghai
# 将时区文件复制到容器中的特定路径
RUN ln -sf /usr/share/zoneinfo/{TZ} \
/etc/localtime && echo "{TZ}" > /etc/timezone
# 将 jar 包添加到容器中并更名为 app.jar
COPY liwy-springboot-1.0-SNAPSHOT.jar app.jar
# 对外暴露 8080 端口
EXPOSE 8080
# 运行 jar 包
CMD ["java","-Djava.security.egd=file:/dev/./urandom", \
"-jar", "app.jar"]
3. 构建镜像
将 jar 包与 Dockerfile 文件放在同一目录下:
docker build -t liwy-springboot:1.0 .
4. 运行容器
docker run -d -p 8080:8080 \
--name liwy-springboot \
liwy-springboot:1.0
猜你喜欢
- 2024-09-30 第 8 章:NGINX 和 Docker docker nginx keepalived
- 2024-09-30 docker 基础安装部署 docker安装与使用
- 2024-09-30 Docker安装和配置Nginx docker 安装 nginx
- 2024-09-30 用docker和nginx部署前端项目,并且访问本地java网关gateway服务
- 2024-09-30 Docker部署WordPress LNMP环境实践
- 2024-09-30 Docker安装部署ElasticSearch docker-compose安装es
- 2024-09-30 Docker部署web服务器之Nginx篇(一)
- 2024-09-30 Docker 循序渐进之实例部署 docker completion
- 2024-09-30 使用容器工具docker进行nginx服务安装
- 2024-09-30 docker 部署tomcat docker部署tomcat无法访问
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)