网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
如何用 docker 部署程序?这个问题有点笼统。
如果是MySQL、Redis这些,只需要拉取镜像,然后设置必要的配置,最终创建并运行实例即可。
如果你的应用是一个Java应用程序,使用Docker来部署它会涉及到Java特有的一些考虑,下面是一个简单的演示:
了解你的Java应用
在我们开始之前,你需要清楚你的应用依赖了哪些资源。比如数据库、消息队列或者其他的服务,这些都会影响你的Docker镜像构建和容器运行。
准备一个Dockerfile
Dockerfile是构建Docker镜像的配方,对于一个典型的Java应用,你可能会从一个包含了JDK的基础镜像开始:
# 选择一个包含了Java环境的基础镜像,这里以jdk11为例
FROM openjdk:11-jre-slim
# 在镜像内创建一个目录来存放你的应用
WORKDIR /app
# 将你的应用的jar文件添加到镜像中
COPY ./target/my-java-demo.jar /app
# 运行你的应用
CMD ["java", "-jar", "/app/my-java-demo.jar"]
这个Dockerfile非常直接,它基于一个已经安装了JRE的官方镜像(这意味着你不需要在你的Dockerfile里安装Java环境),创建了一个工作目录,把你的打包好的Java应用复制进去,然后在容器启动时运行它。
构建你的Docker镜像
使用下面的命令来构建你的镜像:
docker build -t /my-java-demo .
这行命令会在当前目录下查找Dockerfile,并根据该文件构建一个名为/my-java-demo
的镜像。
运行你的Java应用
一旦镜像构建完成,你就可以运行一个基于该镜像的容器了:
docker run -d -p 8080:8080 /my-java-demo
这个命令将会启动一个容器,将容器的8080端口映射到宿主机的8080端口,并在后台运行。
如果你的应用监听的是其他的端口,根据自己的需要调整这些端口号即可。
管理容器
使用以下命令管理你的容器:
- 查看运行中的容器:
docker ps
- 停止容器:
docker stop <container_id>
- 重新启动容器:
docker restart <container_id>
- 查看容器日志:
docker logs <container_id>
使用Docker Compose管理多个服务
如果你的Java应用依赖其他服务,比如MySQL或Redis,你可以使用Docker Compose来定义一个多服务的环境。
创建一个docker-compose.yml
文件,像这样:
version: '3'
services:
app:
image: /my-java-demo
ports:



**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!**
**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[如果你需要这些资料,可以戳这里获取](https://bbs.youkuaiyun.com/topics/618658159)**
部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[如果你需要这些资料,可以戳这里获取](https://bbs.youkuaiyun.com/topics/618658159)**