ํ๋ก์ ํธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
project_root/.travis/debian-stretch/minion/Dockerfile
FROM debian:stretch
COPY .travis/entrypoint_minion_run.sh /opt/
COPY .travis/config/minion.conf /etc/salt/minion.d/minion.conf
COPY .travis/config/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
RUN apt-get update && \
apt-get install -y curl supervisor && \
curl -L https://bootstrap.saltstack.com | sh
ENTRYPOINT ["/opt/entrypoint_minion_run.sh"]
project_root/.travis/debian-stretch/docker-compose.yml
version: '3.4'
services:
master:
build: .travis/debian-stretch/master
hostname: master
domainname: public.com
ports:
- "4505:4505"
- "4506:4506"
links:
- minion1
- minion2
- minion3
minion1:
build: .travis/debian-stretch/minion
hostname: minion1
domainname: public.com
minion2:
build: .travis/debian-stretch/minion
hostname: minion2
domainname: public.com
minion3:
build: .travis/debian-stretch/minion
hostname: minion3
domainname: public.com
project_root
:
docker build -f .travis/debian-stretch/minion/Dockerfile .
์ปจํ
์ด๋ ๋น๋๋ฅผ ์คํํ ์ ์์ต๋๋ค.docker-compose -f .travis/debian-stretch/docker-compose.yml --project-directory=. build minion1
๋ค์๊ณผ ๊ฐ์ ์คํจ๊ฐ ๋ฐ์ํฉ๋๋ค.
Building minion1
Step 1/6 : FROM debian:stretch
---> 6d83de432e98
Step 2/6 : COPY .travis/entrypoint_minion_run.sh /opt/
ERROR: Service 'minion1' failed to build: COPY failed: stat /var/lib/docker/tmp/docker-builder127631070/.travis/entrypoint_minion_run.sh: no such file or directory
๋ฌผ๋ก entrypoint_minion_run.sh
๋ project_root/.travis/entrypoint_minion_run.sh
๋ฒ๊ทธ์
๋๊น, ์๋๋ฉด docker-compose.yml
๋๋ ์ค์ ์ ๋ฌธ์ ๊ฐ ์์ต๋๊น?
๋ด docker-ce ๋ฒ์ : Docker version 17.09.0-ce, build afdb6d4
๋ด docker-compose ๋ฒ์ : docker-compose version 1.17.1, build 6d101fb
๋น๋๊ฐ project_root/.travis/debian-stretch/minion/.travis/entrypoint_minion_run.sh
๋ณต์ฌ๋ฅผ ์๋ํ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ค์๊ณผ ๊ฐ์ ์๋
minion1:
build:
context: .
dockerfile: .travis/debian-stretch/minion/Dockerfile
๊ทํ๊ฐ ์ ์ํ ๋ฐฉ์์ผ๋ก ์๋ํฉ๋๋ค.
๊ฐ์ฌํฉ๋๋ค!
์ง๋ฌธ์ ๋ค์๊ณผ ๊ฐ์ด ํธ์ถ๋ฉ๋๋ค. docker-compose -f .travis/debian-stretch/docker-compose.yml --project-directory=. build
?
@kiemlicz ๋น์ ์ด ์ธ ๋
build: .travis/debian-stretch/master
๊ทธ๊ฒ์
build:
context: .travis/debian-stretch/master
dockerfile: Dockerfile
--project-directory
์ง์์ด๋ ๊ทธ๊ฒ์ ์ํฅ์ ๋ฏธ์น์ง ์์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๋น๋๊ฐ
project_root/.travis/debian-stretch/minion/.travis/entrypoint_minion_run.sh
๋ณต์ฌ๋ฅผ ์๋ํ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ค์๊ณผ ๊ฐ์ ์๋