โ๏ธ Devops/๐ณ Docker
๋์ปค ๊ถํ ๋ฌธ์ ์ผ๋ฐ ์ ์ ๊ฐ ๋์ปค ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ ๋๋ง๋ค Permission Denied๊ฐ ๋ ์ sudo๋ฅผ ์ฌ์ฉํด์ผํ๋ ๋ถํธํจ์ด ์์ต๋๋ค. ์ด๋ ํด๊ฒฐ๋ฐฉ๋ฒ์ ์ฌ๋ฌ๊ฐ์ง๊ฐ ์์ต๋๋ค. ์ ๊ฐ ์์๋ณธ 2๊ฐ์ง ๋ฐฉ๋ฒ์ ๋ํด์ ์์๋ณด๊ฒ ์ต๋๋ค. ํ์ฌ ์ฌ์ฉ์๋ฅผ ๊ทธ๋ฃน์ ์ถ๊ฐ ํ์ฌ ๋ก๊ทธ์ธ ๋ ์ ์ ๋ฅผ docker ๊ทธ๋ฃน์ ์ถ๊ฐํ๋ ๊ฒ์ผ๋ก sudo ๊ถํ ์์ด ์คํํ ์ ์์ต๋๋ค. sudo usermod -aG docker $USER logout # ๋ก๊ทธ์์ ํ ๋ค์ ๋ก๊ทธ์ธ ํ ์ ์ฉ ํ์ง๋ง ์ ๋ฐฉ๋ฒ์ ์จ๋ํํฐ(jenkins ๋ฑ) ์ ์ ์ ๋ํด์๋ ์ ์ฉ์ด ์ด๋ ค์ ์ต๋๋ค. docker.sock Docker CLI(๋์ปค ์ปค๋งจ๋๋ค)๋ ๊ฒฐ๊ตญ docker.sock์ ํตํด์ ๋ช
๋ น์ ์คํํฉ๋๋ค. ๊ทธ๋์ docker.sock์ ๊ถํ์ ์์ ํด์ฃผ๋ฉด ๋ฉ๋๋ค...
โ๏ธ Devops/๐ณ Docker
M1 ๋งฅ์ ์ฌ์ฉ์ค์ธ๋ฐ ๋ฌธ์ ๋ M1์ด arm ๊ธฐ๋ฐ ์นฉ์
์ด๋ผ ๋์ปค ์ด๋ฏธ์ง๋ฅผ ๋ง๋ค๋ฉด, arm ํ๋ซํผ ์ ์ฉ ์ด๋ฏธ์ง๋ก ์์ฑ์ด ๋ฉ๋๋ค. ๊ทผ๋ฐ ์ด๋ฏธ์ง๋ฅผ ๋ฐฐํฌํ ํ๊ฒฝ์ Ubuntu ์ด๋ฏ๋ก ํด๋น ์ด๋ฏธ์ง๊ฐ ์ ๋๋ก ๋์ํ์ง ์๊ฑฐ๋ ์ฑ๋ฅ์ด ์ ํ๋ ์ ์๋ค๊ณ ๊ฒฝ๊ณ ์ฐฝ์ ๋์๋๋ค. ๊ทธ๋์ ์ด๋ฏธ์ง ๋น๋ ์ ์๋ ํ๋ซํผ ์ต์
์ ๋ถ์ฌ์ ๋น๋๋ฅผ ํด์ฃผ๋ฉด ํด๊ฒฐ์ด ๋ฉ๋๋ค. $ docker build --platform amd64 -t [์ด๋ฏธ์ง๋ช
] . ๋ค๋ฅธ ํ๋ซํผ์ผ๋ก ๋น๋ํ๊ณ ์ถ์ ๋ ๋์ปค ์ด๋ฏธ์ง๋ฅผ ๋ง๋ค ๋, ๋ณดํต alpine ์ฒ๋ผ ๊ฐ๋ฒผ์ด ์ด๋ฏธ์ง๋ฅผ Base ์ด๋ฏธ์ง๋ก ์ฌ์ฉํ๊ณค ํฉ๋๋ค. ๋น๋ํ ๋ ์ง์๋๋ Arch๋ Base ์ด๋ฏธ์ง๋ฅผ ๋ฐ๋ผ๊ฐ๊ฒ ๋๋๋ฐ์. openjdk ๊ณต์ ์ด๋ฏธ์ง๋ฅผ ์๋ก ๋ค๋ฉด, ์ฌ๋ฌ OS Arch๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ฌ๋ฌ๋ถ์ด ์ด๋ฏธ์ง๋ฅผ ์..
โ๏ธ Devops/๐ณ Docker
Spring boot ํ๋ก์ ํธ๋ฅผ docker image๋ก ๋ง๋ค์ด ๋ณด๊ฒ ์ต๋๋ค. ๊ฐ๋จํ spring boot ํ๋ก์ ํธ ์์ฑ HomeController import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class HomeController { @GetMapping("/hello") public String hello(@Value("${test.customName}") String name) { ret..
โ๏ธ Devops/๐ณ Docker
docker-compose ๋ค์ด๋ก๋ ์๋์์ ์ต์ ๋ฒ์ ํ์ธ! Releases · docker/compose sudo curl -L https://github.com/docker/compose/releases/download/v2.4.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose ๊ถํ ์ค์ sudo chmod +x /usr/local/bin/docker-compose ์ค์น ํ์ธ docker-compose --version Docker, Docker-Compose ์ค์นํ๊ธฐ - Ubuntu 20.04 LTS Docker ์ค์น ์คํํ๊ฒฝ: Ubuntu 20.04 LTS ์
๋ฐ์ดํธ ๋ฐ HTTP ํจํค์ง ์ค์น $ sudo apt upda..
โ๏ธ Devops/๐ณ Docker
Docker ์ค์น ์คํํ๊ฒฝ: Ubuntu 20.04 LTS ์
๋ฐ์ดํธ ๋ฐ HTTP ํจํค์ง ์ค์น $ sudo apt update $ sudo apt-get install -y ca-certificates \ curl \ software-properties-common \ apt-transport-https \ gnupg \ lsb-release GPG ํค ๋ฐ ์ ์ฅ์ ์ถ๊ฐ $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg Repository ๋ฑ๋ก echo \ "deb [arch=amd64 signed-by=/usr/share/key..
โ๏ธ Devops/๐ณ Docker
Dockerfile์ด๋ Docker ์ด๋ฏธ์ง๊ฐ ์ด๋ค ๋จ๊ณ๋ฅผ ๊ฑฐ์ณ ๋น๋(build)๊ฐ ๋๋ ๊ณผ์ ์ ํ
์คํธ ํ์ผ๋ก ํํํ ๊ฒ์
๋๋ค. Docker ์ด๋ฏธ์ง์๋ Layer)๊ฐ ์๋๋ฐ ์ด ๋ช
๋ น์ด ๋ผ์ธ ํ๋ ํ๋๊ฐ ์คํ๋๋ฉด์ image Layer๋ฅผ ์ด๋ค์ ๊ฒฐ๊ตญ์๋ ํ๋์ ์ด๋ฏธ์ง๊ฐ ๋๋ ๊ฒ์
๋๋ค. (*์ถํ ํฌ์คํ
์์ ) *Dockerfile์ ํญ์ ์ต์์ ๋๋ ํ ๋ฆฌ์ ์์ด์ผ ํฉ๋๋ค. Dockerfile ๋ช
๋ น๋ฌธ ํ์ Key Value # ์ฃผ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ช
๋ น์ด(INSTRUCTION) ์ธ์(arguments) ๋ช
๋ น๋ฌธ์ ๋ช
๋ น์ด๋ก ์์ํ๊ณ ๊ทธ ๋ค์๋ ์ฌ๋ฌ ๊ฐ์ ์ธ์๋ฅผ ์ค ์ ์์ต๋๋ค. ๋ช
๋ น์ด๋ ๋๋ฌธ์, ์ธ์๋ ์๋ฌธ์๋ก ๊ตฌ๋ถ์ง์ด ์ฌ์ฉํ๋ ๊ฒ์ด ๊ด๋ก๋ผ๊ณ ํฉ๋๋ค. FROM : # tag ์๋ต ์ default = late..