์ด์ ๋ด์ฉ
๐ณ SpringBoot + Docker + DockerCompose๋ฅผ ์ด์ฉํ AWS EC2 ๋ฐฐํฌํ๊ธฐ
EC2 ์๋ฒ
$ docker logs web
์๋ฒ ๋ด Docker Image ํ์ธ
โ ์คํ๋ง๋ถํธ ๊ด๋ จ ๋ก๊ทธ๊ฐ ๋ ์ผ ํ๋๋ฐ, ํ์ฌ redis ๊ด๋ จ ๋ก๊ทธ๊ฐ ์จ์ง๊ณ ์๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ต๋๋ค.
(์ด์๋ ๋ณ๊ฐ๋ก redis ์ค์ ์๋ ์ฑ๊ณตํ ๊ฒ์ผ๋ก ๋ณด์
๋๋ค...!)
1๏ธโฃ Github Actions โDeploy to serverโ
- name: Docker build & push to docker repo
run: |
docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
docker build -f Dockerfile -t ${{ secrets.DOCKER_REPO }} .
docker push ${{ secrets.DOCKER_REPO }}
docker build -f Dockerfile -t ${{ secrets.DOCKER_REPO_REDIS }} .
docker push ${{ secrets.DOCKER_REPO_REDIS }}
bulid๊ฐ ๋ฎ์ด์ฐ๊ธฐ
๋๋ ํ์์ด ๋ฐ๊ฒฌ๋์์์ ํ์
ํ์ต๋๋ค.๐ ์ ํ์ง
- Dockerfile์ web๊ณผ redis๋ก ๋ค๋ฅธ ํ์ผ๋ก ๋ถ๋ฆฌํ๋ ์์ ์งํ
- ๊ฐ์ Dockerfile ๋ด์์ ์คํ ์ด์ง์ ์ง์ ํด์ ๋๋ ์ฃผ๋ ์์ ์งํ
์ด๋ค ์ ํ์ ํ๋ ๊ฒ์ด ์ข์์ง ๊ณ ๋ฏผํ๋ ๊ณผ์ ์ chatGPT์๊ฒ ๊ถ๊ธํ๋ ๋ถ๋ถ์ ๋ฌผ์ด๋ดค์ต๋๋ค.
์คํ๋ง๋ถํธ ์ค์ + Redis ์ค์
์ ๋ชจ๋ ํด๋ ๊ฒ์ด ๋ฌธ์ ๊ฐ ๋ ์๋ ์๊ฒ ๋ค๋ ์๊ฐ์ ํ๊ฒ ๋์๊ณ ์ฒซ ๋ฒ์งธ ๋ฐฉ๋ฒ
์ ์ ํํ๊ธฐ๋ก ํ์ต๋๋ค.โ๏ธ ์์ ๊ณผ์
โ๏ธ IntelliJ IDEA
FROM openjdk:17-alpine
# ARG JAR_FILE=parking-0.0.1-SNAPSHOT.jar
ARG JAR_FILE=/build/libs/parking-0.0.1-SNAPSHOT.jar
COPY ${JAR_FILE} myboot.jar
ENTRYPOINT ["java", "-jar", "/myboot.jar"]
FROM redis
# COPY conf/redis.conf /usr/local/etc/redis/redis.conf
CMD [ "redis-server"]
EXPOSE 6379
- name: Docker build & push to docker repo
run: |
docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
# Build and push web image
docker build -f Dockerfile -t ${{ secrets.DOCKER_REPO }} .
docker push ${{ secrets.DOCKER_REPO }}
# Build and push redis image
docker build -f Dockerfile_redis -t ${{ secrets.DOCKER_REPO_REDIS }} .
docker push ${{ secrets.DOCKER_REPO_REDIS }}
โ๏ธ Github Actions
โ๏ธ EC2
๐ ์ฐธ๊ณ ์๋ฃ
๐ฌ Redis ์๋น์ค ์ปจํ ์ด๋ ๋ง๋ค๊ธฐ
๐ฌ redis: Docker Official Image
๐ฌ [Redis] Redis ์คํ ์ ๋ฐ์ํ๋ ์ค๋ฅ ํด๊ฒฐ
๐ฌ Redis: Warning Memory overcommit must be enabled #1731
๐ฌ [DevOps/Docker]Redis๋ฅผ Docker๋ก ๋์ฐ๊ธฐ + Docker Compose up์ผ๋ก ๋์ฐ๊ธฐ
๐ฌ [AWS] ์ฌ๋ถํ ๋ฐฉ๋ฒ
๐ฌ ๋์ปค ์ค์น ํ ๋์ปค ๋ช ๋ น์ด ์คํ ์๋ฌ Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
๐ฌ DevOps/docker/ [docker] ๋์ปค ์ปจํ ์ด๋, ์ด๋ฏธ์ง ์ญ์ ํ๊ธฐ(docker rm, rmi)