Widget Connector | ||
---|---|---|
|
Info | ||||
---|---|---|---|---|
| ||||
|
Docker-compose.yml 파일 작성
Code Block | ||
---|---|---|
| ||
version: '3'
services:
spring-demo:
container_name: spring-demo
image: sooabia/spring-demo:1.0
restart: always
ports:
- '80:8080'
links:
- redis
redis:
container_name: redis
image: redis
ports:
- "6379:6379"
volumes:
- ./redis:/data/redis
restart: always |
Redis Volume 폴더 생성
Code Block |
---|
## redis volume을 위한 폴더를 생성합니다.
[root@workspace-vm deploy]# mkdir ./redis |
멀티 컨테이너 실행
Code Block |
---|
## Docker compose로 멀티 컨테이너를 실행합니다.
[root@workspace-vm deploy]# docker-compose up -d
Creating network "deploy_default" with the default driver
Creating redis ... done
Creating spring-demo ... done
[root@workspace-vm deploy]#
[root@workspace-vm deploy]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fc98d294e435 sooabia/spring-demo:1.0 "java -jar /app.jar" 8 seconds ago Up 6 seconds 0.0.0.0:80->8080/tcp spring-demo
9ebfffd30318 redis "docker-entrypoint.s 9 seconds ago Up 7 seconds 0.0.0.0:6379->6379/tcp redis
[root@workspace-vm deploy]# |
어플리케이션 동작 확인
Code Block |
---|
## 멀티 컨테이너 어플리케이션을 실행합니다.
[root@workspace-vm deploy]# curl -XPOST http://localhost/link -H "Content-Type: application/json" -d "{\"link\":\"http://wiki.iisanse.com\"}"
{"shortenedLink":"MrzIHZ"} |
Code Block |
---|
## Docker compose 멀티 컨테이너를 정리 합니다.
[root@workspace-vm deploy]# docker-compose down
Stopping spring-demo ... done
Stopping redis ... done
Removing spring-demo ... done
Removing redis ... done
Removing network deploy_default
[root@workspace-vm deploy]#
[root@workspace-vm deploy]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
[root@workspace-vm deploy]# |