Comments (32)
도커 깐김에 배포까지 포스트 "https://blog.nacyot.com/articles/2014-01-27-easy-deploy-with-docker/"
URL이 404 에러를 뱉네용.. 혹시 포스트 삭제하셨나요? ㅠㅠ
from feedback.
도커(Docker) 입문편: 컨테이너 기초부터 서버 배포까지 | 44BITS
이 글이 같은 글을 리뉴얼한 내용입니다. 기존 사이트는 다른 문제 때문에 접속이 안 되는 것 같은데 복원해두겠습니다.
from feedback.
꿀팁이 정말 많네요. 감사합니다.
from feedback.
django 컨테이너 A, B가 있다고 할 때 각각 호스트 컴퓨터에 연결된 포트가 있을 텐데, nginx에 별도 설정을 하지 않으셨다면 아마 한 대만 트래픽을 받지 않았을까 싶어요.
제가 같은 환경을 구성해보진 않았지만 이런 글을 보았습니다. https://pspdfkit.com/blog/2018/how-to-use-docker-compose-to-run-multiple-instances-of-a-service-in-development/
이미 검색해보셨을 것 같은데, 저 글처럼 해도 안 되었다면 저도 잘 모르겠네요 ^^a
from feedback.
좋은 포스터 감사합니다.
from feedback.
@wlsl8135 읽어주셔서 고맙습니다. ^^
from feedback.
헉 답장 가능합니다. 진행하던 도중에 막히는 부분이 있어서 여쭤보려하는데,
docker run -it --rm -p 8000:8000 --link db -e DJANGO_DB_HOST=db -e DJANGO_DEBUG=True django-sample ./manage.py runserver 0:8000 이부분에서
/usr/bin/env: ‘python\r’: No such file or directory 이 오류가 계속 나네요.
dockerfile이나 dockerfile.dev에 있는 \r\n문제인가 해서 수정을 해봐도 같은 오류가 나오는데 윈도우 환경에서 도커로 실행할 때 이 에러를 어떻게 해결할 수 있을까요?
./mange.py runserv 0:8000을 지우면 실행은 되는데 내부로 들어가서 실행할 수가 없네요 ㅠㅠ
from feedback.
@wlsl8135 답변이 늦어 죄송합니다. 아쉽게도 제가 윈도 환경이 아니어서 확인할 방법이 없답니다. 해결하셨다면 해결 방법도 알려주시면 고맙겠습니다. ^^
from feedback.
@raccoonyy 이게 맞는지 모르겠지만, 내부에 뒤에 ./mange.py runserver 0:8000을 지우고 진행해도 docker-compose.yml파일의 명령어 덕분에 잘 진행 되는것 같아요 ㅎㅎ 답변감사합니다.
from feedback.
@wlsl8135 해결되어서 다행입니다. ^^
from feedback.
좋은 글 감사합니다 많은 도움이 됐습니다!
from feedback.
Compose 파일에서 version: '3'
이라고 하면 version: '3.0'
으로 해석하는데, 이게 최신 버전을 의미하지는 않는다고 하네요~ #
from feedback.
@sunghwan2789 앗 그렇군요~ 바뀐 건지 제가 잘못 알았던 건지 모르겠지만, 본문을 수정하겠습니다.
알려주셔서 고맙습니다 ^^
from feedback.
docker-compose.yml 파일 command 항목에 하이픈을 없애면 정상적으로 실행되네요
from feedback.
3.3 드디어 실행! << 진행할때요
from feedback.
@hyejun8701 알려주셔서 고맙습니다. 수정해두겠습니다. ^^
from feedback.
2.3에서
$ docker run -it --rm postgres 을 입력하면
Error: Database is uninitialized and superuser password is not specified.
You must specify POSTGRES_PASSWORD to a non-empty value for the
superuser. For example, "-e POSTGRES_PASSWORD=password" on "docker run".
You may also use "POSTGRES_HOST_AUTH_METHOD=trust" to allow all
connections without a password. This is *not* recommended.
See PostgreSQL documentation about "trust":
https://www.postgresql.org/docs/current/auth-trust.html
위와 같은 에러가 발생합니다.
from feedback.
안녕하세요, racoony 님,
올려주신 django-sample/Dockerfile 내에
CMD ["python", "manage.py", "runserver", "0:8000"]
가 존재하고 있는데
2.x 들의 예시들을 보면 ./manage.py runserver 0:8000 가 다시 입력이 되고 있습니다.
중복되도 상관은 없는건가요?
from feedback.
2.6 예제부분
docker run -it --rm \
--name db \
-e POSTGRES_DB=djangosample \
-e POSTGRES_USER=sampleuser \
-e POSTGRES_PASSWORD=samplesecret \
--volume=$(pwd)/docker/data:/var/lib/postgresql/data \
postgres:
맨 뒤에 :
삭제해야 될것 같아요
from feedback.
꼼꼼하고 자세한 설명 감사드립니다.
from feedback.
rumbarum //
- postgresql 이미지가 업데이트 되면서 사용법이 조금 달라진 것 같습니다.
POSTGRES_PASSWORD
환경변수를 지정해주시거나,postgresql:11.6
이하 이미지를 사용하시면 문제 없이 동작하는 것으로 보입니다. 본문은 raccoonyy 님과 논의 후 추후에 수정해두겠습니다. docker run
마지막에 명령어를 지정하면 CMD 내용과 무관하게 지정한 명령어를 실행합니다. 따라서 중복되도 괜찮습니다.:
생략되는 게 맞을 것 같네요. 이 부분도 호환되는postgresql
버전을 확인하고 수정하겠습니다.
감사합니다. 👍
from feedback.
한줄 한줄 어느 곳도 빠트릴 수 없는 소중한 내용을
이해하기 쉽게 잘 풀어 설명해주셔서 감사합니다.
from feedback.
너무 잘 봤습니다. 감사합니다!
from feedback.
좋은 글입니다..!! 초보자도 이해할 수 있게 쉽게 작성해주셔서 감사합니다!!
from feedback.
좋은 글 감사합니다!
from feedback.
도커 컴포즈 파일 공부 중이였는데 큰 도움이 됐습니다! 감사합니다!
from feedback.
이 문서 많은 도움이 됐어요! 여기저기서 활약하시는 @raccoonyy 님 감사합니다!
최근 개발 서비스를 docker compose 로 잘 운영하고 있습니다. 궁금한점이 있는데요, 제가 db, web(nginx), django 이렇게 3개의 서비스를 쓰는데요, 다음 명령을 하면 스케일아웃도 된다고 하여,
docker-compose --compatibility up -d --scale django=5
(--compatibility 옵션을 쓴 이유는 docker-compose version 3에서 자원을 제한하는 구문을 쓰려면 이렇게 해야 하더라고요)
잘 되는가 싶었는데, scale django=n 숫자를 늘리거나 줄여도 성능이 늘어난다거나 하지 않네요. locust 로 성능테스트 해봤습니다. 이런 경우, 별도의 로드밸런싱 설정이 필요할까요? 찾다가 못찾고 질문드립니다.
from feedback.
@yong27
안녕하세요 오랜만이네요~ ^^
도커 컴포즈는 한 서버 내에 컨테이너를 여러 대 구성하는 방식이잖아요?
그래서 기존의 컨테이너들이 서버의 CPU, RAM 자원을 100% 가까이 사용하고 있었다면, scale을 통해 컨테이너 개수를 늘리더라도 성능 향상이 될 것 같지는 않습니다.
이 경우가 아니라면 좀더 상황 설명을 들어봐야 알겠어요~
from feedback.
아, docker-compose 의 각 서비스들의 자원을 제한하는 설정을 했습니다.
deploy:
resources:
limits:
cpus: "4.0"
memory: 2048M
cpu 나 memory 를 늘리면서 성능이 증가하는건 확인했는데, --scale django=5
으로 서비스수를 늘리는 건 성능증가가 안보여서요. docker-compose logs -f
로 로그를 보니, django_3 서비스만 돌고 있어요.
from feedback.
아, 그렇다면 django 컨테이너들이 호스트의 어떤 포트로 각각 연결되고 있나요? + 외부에서 들어온 트래픽을 어떤 django 컨테이너가 처리할지 어떻게 결정하고 계신가요?
from feedback.
외부에서 들어온 요청은 nginx 가 받고요, 포트포워딩으로 django 로 넘깁니다. scale out 적용하면, django 컨테이너가 많아지면서 자동으로 로드 밸런싱을 할꺼라고 기대했거든요.
from feedback.
재밌게 잘 읽었습니다!
from feedback.
Related Issues (20)
- 도커 허브(Docker Hub), 미사용 이미지 보존 기간 6개월로 제한 HOT 1
- 슬랙(Slack)으로 특정 조건의 이메일을 받아보자! HOT 1
- ip로 직접 만들어보는 네트워크 네임스페이스와 브리지 네트워크 - 컨테이너 네트워크 기초 2편 HOT 7
- 커맨드라인 인터페이스, 셸, 터미널이란? HOT 4
- AWS 파게이트(AWS Fargate) 시작하기: ECS 매니지드 컨테이너 HOT 4
- AWS ECS로 시작하는 컨테이너 오케스트레이션 HOT 11
- 도커(Docker) 컨테이너 로케일 설정: 데비안(Debian), 우분투(Ubuntu) 이미지에서 한글 입력 문제 HOT 3
- 컨테이너란? 리눅스의 프로세스 격리 기능 HOT 3
- AWS 람다(AWS Lambda)란? HOT 1
- 베어(Bear): 최고의 마크다운 노트 애플리케이션 HOT 2
- AWS 컴퓨팅 자원 할인 프로그램 Savings Plans의 이해 HOT 2
- D3.js 기초: select()와 enter() 함수 이해하기 HOT 4
- UTS 네임스페이스를 사용한 호스트네임 격리 - 컨테이너 네트워크 기초 1편 HOT 2
- scratch 도커 이미지를 활용한 초경량 이미지 만들기 HOT 2
- 베이그런트(Vagrant) 튜토리얼: 개발 환경 공유와 가상 머신 관리 도구 HOT 3
- 도커 이미지 빌드와 Dockerfile 기초 HOT 2
- 파이썬 테스트를 도와주는 Faker와 Factory Boy HOT 1
- Django Rest Framework 레시피 HOT 1
- [오타 제보] 네트워크 네임스페이스 veth 관련
- 도커 컨테이너 5분 만에 무료로 배포하기(feat. fly.io) HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from feedback.