/usr/local/apache2/htdocs
/usr/share/nginx/html
/var/www/html
FROM ubuntu:18.04
RUN apt update
RUN apt -y install apache2
ADD index.html /var/www/html
EXPOSE 80 8080
CMD apache2ctl -DFOREGROUND
docker build -t myweb:1.0 test1/.
docker image inspect myweb:1.0
docker container run -d -p 8008:80 --name myweb01 myweb:1.0
p. 224
- external 옵션을 true 로 하면, 새로 생성하지 않고, 기존에 생성된 Network 나 Volume 을 사용한다
version: '3.7'
services:
wordpress:
image: wordpress
networks:
- testnetwork1
volumes:
- /home/rapa/0823/test2/html:/var/www/html #mount nfs
ports:
- "8881-8882:80"
links:
- "db:mysql"
depends_on:
- db
environment:
- WORDPRESS_DB_NAME=testdb
- WORDPRESS_DB_USER=root
- WORDPRESS_DB_PASSWORD=test123
db:
image: mysql:5.7
networks:
- testnetwork1
volumes:
- testvolume1:/var/lib/mysql # volume mount iscsi
environment:
- MYSQL_DATABASE=testdb
- MYSQL_ROOT_PASSWORD=test123
networks:
testnetwork1:
external: true
volumes:
testvolume1:
external: true
docker-compose.yml 파일에 위와 같이 작성하자. wordpress 컨테이너와 db 컨테이너를 배포하여 wordpress 를 서비스할 것이다
Container 를 두 개 배포할 것이므로, Port 를 두 개 열어두자
docker-compose up --scale wordpress=2 --scale db=2 -d
docker-compose ps
docker compose 명령어는 p. 238 을 참조하자
docker-compose down
- 이때, Network 와 Volume 은 External 로 외부에서 생성한 것이므로 삭제되지 않는다. 만약, docker compose 를 통해 생성한 Network 와 Volume 이라면 삭제된다