์๋ ํ์ธ์,
๊ณ ์ ํ์๊ธฐ-์์ฑ 1.9.0 ๋ค์๊ณผ ๊ฐ์ ๊ณ ์ ํ์๊ธฐ-compose.yml์ ๊ฐ์ํ ๋ :
version: '2'
services:
kafka:
image: wurstmeister/kafka
environment:
KAFKA_ADVERTISED_HOST_NAME: ${HOSTNAME}
๋ค์ ๋ช ๋ น์ ์คํํ ๋ :
ssh [email protected] "docker-compose up -d
๊ทธ๋ฌ๋ฉด ํธ์คํธ ์ด๋ฆ ํ๊ฒฝ ๋ณ์๊ฐ ์ธ์๋์ง ์์ต๋๋ค. ๋ค์๊ณผ ๊ฐ์ ๋ฉ์์ง๊ฐ ๋ํ๋ฉ๋๋ค.
HOSTNAME ๋ณ์๊ฐ ์ค์ ๋์ง ์์์ต๋๋ค. ๊ธฐ๋ณธ๊ฐ์ ๋น ๋ฌธ์์ด์ ๋๋ค.
์ฌ์ฉ์ "foo"๋ก ํธ์คํธ "bar"์์ ๋์ผํ ๋ช
๋ น์ ์คํํ๋ฉด ์ค๋ฅ๊ฐ ๋ฐ์ํ์ง ์์ต๋๋ค. ์ฒ์์ ssh๋ก ์ฐ๊ฒฐ ํ ๋ค์ ๋ช
๋ น์ ์คํํ๋ ๊ฒฝ์ฐ์๋ ๋์ผํฉ๋๋ค.
์ด๊ฒ์ ์ฐ๋ฆฌ์๊ฒ ์ค์ํ ๋ฌธ์ ์
๋๋ค. ์ด ์ํฌ ํ๋ก๋ CI์์ ๋ฐ์ํฉ๋๋ค.
์ฐ๋ฆฌ๊ฐ ์ฐพ์ ์ ์ผํ ํด๊ฒฐ ๋ฐฉ๋ฒ ์ ๋ค์ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ๋ ๊ฒ์ ๋๋ค.
#!/bin/bash
export HOSTNAME=${HOSTNAME}
docker-compose up -d
๊ทธ๋ฆฌ๊ณ ssh๋ฅผ ํตํด ์คํ .. ์ ์๊ธฐ์ง ์์ ..
์, ssh๋ฅผ ํตํด ์ง์ ๋ช
๋ น์ ์คํํ ๋ ์ค์ ๋ก ์์ ์ด์ง ์๊ธฐ ๋๋ฌธ์ ๋ฐ์ํ์ง ์์ต๋๊น? $HOSTNAME
์ ๊ฐ์ ์ผ๋ถ ํ๊ฒฝ ๋ณ์๊ฐ ์ค์ ๋์ง ์์์ ์๋ฏธํฉ๋๊น?
UNIX ๋ฐ / ๋๋ SSH์ ๋ฌธ์ ๊ฐ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ์์ฑ ์์ค์์ ์ด์ ๋ํด ์ํ ํ ์์๋ ์์ ์ด ์์ต๋๋ค.
๊ทธ๊ฒ ์ ๊ฐ ์๊ฐํ๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ฌ๋ ๋ค์ ๋ช ๋ น ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ์๋ํฉ๋๋ค. ์ด๋ ssh ์ธ์ ์ค์ ๋ณ์ HOSTNAME์ด ์ฌ๋ฐ๋ฅด๊ฒ ์ค์ ๋์์์ ์๋ฏธํฉ๋๋ค. ๊ทธ๋์ ์ compose๊ฐ ๊ทธ๊ฒ์ ์ธ์ํ์ง ๋ชปํ๋์ง ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ๊ทธ๊ฑฐ ์ด์ํฉ๋๋ค.
๊ด๋ จ์ฑ ์ด ์๋ ๊ฒ ๊ฐ์ต๋๋ค. bash
๋ด ๋ณด๋ด์ง ์์ต๋๋ค $HOSTNAME
ํ๋ ๊ทธ๊ฒ์ด ๋ณผ๋์ง ์ ์ค๋ช
, ๊ธฐ๋ณธ์ ์ผ๋ก docker-compose
.
๋ด Ubuntu 16.04 ํ๊ฒฝ์์ ๋ก์ปฌ๋ก ์ฌํ ํ ์ ์์ผ๋ฏ๋ก SSH์ ๊ด๋ จ์ด ์์์ ํ์ธํ ์ ์์ต๋๋ค.
@ shin- @made ์ฐ๋ถํฌ์์์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ๋ช ํํํ์ญ์์ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๊ด๋ จ์ฑ ์ด ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
bash
๋ด ๋ณด๋ด์ง ์์ต๋๋ค$HOSTNAME
ํ๋ ๊ทธ๊ฒ์ด ๋ณผ๋์ง ์ ์ค๋ช , ๊ธฐ๋ณธ์ ์ผ๋กdocker-compose
.๋ด Ubuntu 16.04 ํ๊ฒฝ์์ ๋ก์ปฌ๋ก ์ฌํ ํ ์ ์์ผ๋ฏ๋ก SSH์ ๊ด๋ จ์ด ์์์ ํ์ธํ ์ ์์ต๋๋ค.