🌟 초보도 쉽게 따라 하는 Docker로 앱 배포 & Docker Hub 업로드 가이드 🌟
안녕하세요, 여러분! 😊 개발을 하다 보면 "이 앱을 어떻게 세상에 내놓지?"라는 고민, 한 번쯤 해보셨죠? 저도 처음엔 서버 설정에 머리 아팠던 기억이 새록새록해요. 하지만 Docker 덕분에 이 과정이 훨씬 간단해졌답니다! 🚀 오늘은 초보자도 쉽게 따라 할 수 있는 Docker로 앱 배포 방법과 Docker Hub에 올리는 과정을 친근하게 알려드릴게요. 자, 커피 한 잔 들고 시작해볼까요? ☕
1. Docker가 뭐야? 왜 쓰는 거지? 🤔
Docker는 앱을 컨테이너라는 가벼운 패키지에 담아서 어디서든 똑같이 실행할 수 있게 해주는 도구예요. 예를 들어, 내 컴퓨터에선 잘 돌아가던 앱이 서버에선 에러? 이런 문제를 싹 해결해줍니다. 게다가 설정도 간단해서 초보자도 금방 익힐 수 있어요!
2. 간단한 앱 준비하기
먼저, 배포할 간단한 앱을 만들어볼게요. 여기선 Node.js로 간단한 웹 앱을 예로 들어볼게요. 아래는 간단한 서버 코드예요.
const express = require('express');
const app = express();
app.get('/', (req, res) => res.send('Hello, Docker World!'));
app.listen(3000, () => console.log('Server running on port 3000'));
이 코드를 app.js로 저장하고, 같은 폴더에 package.json도 만들어줍시다.
{
"name": "docker-app",
"version": "1.0.0",
"dependencies": {
"express": "^4.17.1"
},
"scripts": {
"start": "node app.js"
}
}
3. Dockerfile 작성하기 📝
이제 Docker가 앱을 어떻게 실행할지 알려주는 Dockerfile을 만들어요. 같은 폴더에 Dockerfile이란 이름으로 아래 내용을 저장하세요.
FROM node:14
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD ["npm", "start"]
이 파일은 Node.js 환경을 설정하고, 앱 코드를 복사해서 실행할 준비를 해줍니다. 간단하죠? 😄
4. Docker 이미지 빌드하기
터미널에서 앱 폴더로 이동한 뒤, 아래 명령어로 이미지를 빌드해요.
docker build -t my-app .
my-app은 이미지 이름이에요. 빌드가 끝나면 docker images로 확인해볼 수 있어요.
5. 컨테이너 실행해보기 🛠️
이제 이미지를 컨테이너로 실행해봅시다.
docker run -p 3000:3000 my-app
브라우저에서 localhost:3000에 접속하면 "Hello, Docker World!"가 보일 거예요! 성공! 🎉
6. Docker Hub에 업로드하기
이제 이 멋진 앱을 세상과 공유할 차례예요. Docker Hub에 이미지를 업로드하면 누구나 다운 받아 사용할 수 있죠. 먼저, Docker Hub 계정을 만들고 로그인해요.
docker login
그 다음, 이미지에 태그를 붙여줍니다. yourusername은 본인의 Docker Hub 사용자 이름으로 바꿔주세요.
docker tag my-app yourusername/my-app:latest
이제 업로드!
docker push yourusername/my-app:latest
업로드가 완료되면 Docker Hub에서 내 이미지를 확인할 수 있어요. 다른 서버에서 docker pull yourusername/my-app:latest로 다운받아 실행할 수 있답니다!
7. 마무리하며
Docker로 앱 배포, 생각보다 쉽죠? 처음엔 낯설어도 한 번 해보면 "이렇게 편할 수가!"라는 감탄이 나올 거예요. 😜 여러분의 소중한 앱을 세상에 뿌리기 위해 Docker와 Docker Hub를 적극 활용해보세요. 궁금한 점 있으면 언제든 댓글 남겨주세요!