雲伺服器:如何在docker容器中部署應用
雲伺服器:如何在 docker容器中部署應用? docker是開發者的開放平臺,容器是可擴充套件的,可更安全的使用和部署。Docker容器能夠共享一個核心並共享應用程式庫,這裡介紹在Docker容器中部署簡單的Spring Boot應用。
一個簡單的Hello World應用。
1.1 Maven依賴
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.4.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent>
引入spring-boot-starter-web來建立一個Web應用。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
1.2 主應用程式
@SpringBootApplicationpublic class FirtSpringBootApplication { public static void main(String[] args) { SpringApplication.run(FirtSpringBootApplication.class, args); } }
1.3 服務介面
RESTful服務介面:
@RestControllerpublic class HelloController { @RequestMapping("/hello") public String hello() { return "Hello World"; } }
2 安裝Docker,安裝完畢後,Docker環境的虛擬IP是192.168.99.100。
3 部署應用
3.1 Spring Boot應用打包
在Spring Boot應用工程目錄下執行mvn 打包命令:
mvn package spring-boot:repackage
工程的target目錄裡生成了一個jar包 firtSpringBoot-0.0.1-SNAPSHOT.jar。將jar包更名為firtSpringBoot-1.0.jar上傳到Docker環境裡。
3.2 Dockerfile檔案
Dockfile原則上是一個批處理檔案,包含了構建映象的命令。將這些命令放入檔案中並不是絕對必要的,因為我們可以將它們傳遞到命令列,只是使用檔案更簡單一些。
現在建立一個Dockerfile:
FROM alpine:edge MAINTAINER peterwanghao.com RUN apk add --no-cache openjdk8 VOLUME /tmp ADD firtSpringBoot-1.0.jar firtSpringBoot.jar EXPOSE 8080ENTRYPOINT ["java","-jar","/firtSpringBoot.jar"]
3.3建立映象
在Dockerfile檔案目錄下執行docker build命令,這將下載基映象並一條接一條地執行Dockerfile檔案中的條目。建立的映象的名字是first,標籤1.0。–rm=true,在整個構建過程成功後刪除中間環節的容器。
$docker build -t first:1.0 --rm=true .
使用docker images命令列出所有的映象和它們的詳細資訊。
docker@default:~/first-spring-boot$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE first 1.0 02f67d8c308d 17 hours ago 119MB hello-world latest e38bc07ac18e 6 weeks ago 1.85kB alpine edge 5c4fa780951b 4 months ago 4.15MB
3.4 執行容器
接下來,我們將執行容器。使用下面的命令載入並執行容器。
docker run --name=first -p 8080:8080 -t first:1.0
使用docker ps命令列出正在執行的容器
docker@default:~/first-spring-boot$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 9fc3aef6e852 first:1.0 "java -jar /firtSpri 5 hours ago Up 5 hours 0.0.0.0:8080->8080/tcp first
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69948194/viewspace-2665323/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Docker容器化部署Python應用DockerPython
- Docker容器學習梳理 - 應用程式容器環境部署Docker
- Docker容器與虛擬化技術:OpenEuler 部署 docker容器應用Docker
- Docker的安裝與容器應用部署Docker
- .NET Core容器化之多容器應用部署(Docker-Compose)Docker
- .NET Core容器化之多容器應用部署@Docker-ComposeDocker
- 使用Docker容器化部署實踐之Django應用部署(一)DockerDjango
- Docker容器雲在金融行業的應用Docker行業
- 應用容器引擎-DockerDocker
- 如何在docker中部署springboot的web應用DockerSpring BootWeb
- 如何在阿里雲上部署 Django 應用程式阿里Django
- Docker容器中執行.Net Core應用程式Docker
- 如何在Docker容器中執行GUI程式DockerGUI
- Docker_Docker應用部署4Docker
- Docker部署Angular應用DockerAngular
- Docker容器中應用程式的log輸出管理Docker
- Docker Compose 多容器應用Docker
- 如何快速部署容器化應用
- 使用 Docker 部署 Node 應用Docker
- Docker常用的應用部署Docker
- docker 容器操作、應用部署、mysql,redis,nginx、遷移與備份、DockerfileDockerMySqlRedisNginx
- 如何把 Java Web 應用放在 docker 容器中執行JavaWebDocker
- 雲伺服器:如何遠端登入docker容器伺服器Docker
- 把執行在 Docker 容器內的 Microsoft SQL 伺服器部署到 SAP Kyma 中DockerROSSQL伺服器
- 在 SAP 雲平臺上部署和執行 Docker 應用Docker
- 【Azure DevOps系列】Azure DevOps使用Docker將.NET應用程式部署在雲伺服器devDocker伺服器
- Docker應用容器日誌資訊收集Docker
- 如何在Docker容器中使用ArthasDocker
- 如何使用 docker 部署前端應用Docker前端
- 在Docker容器中執行ASP.NET MVC應用程式DockerASP.NETMVC
- 容器化部署實踐之Django應用部署(二)Django
- Docker 入門系列三:Docker 應用部署-MySQLDockerMySql
- Docker 入門系列三:Docker 應用部署-NginxDockerNginx
- Docker 入門系列三:Docker 應用部署-RedisDockerRedis
- Vue.js應用程式容器化部署Vue.js
- Docker容器中應避免的那些事兒Docker
- 將SpringBoot應用Docker化並部署到SAP雲平臺Spring BootDocker
- 使用Portainer部署Docker容器實踐AIDocker