개발자
안녕하세요 파이썬도 처음인데 도커도 처음 하게 되었어요 개발로 Fast API를 만들어 pyKomoran을 사용해 문자를 받는 것을 추가했습니다 이제 환경을 도커로 만들어 배포를 하고 싶은데 Komoran는 Java에서 실행이 되다 보니 Java를 설치를 해야 하는데 도커에서 어떻게 추가하는지 잘 모르겠어요 AI 들에게 물어봤지만 오류만 나고 있습니다 -------------------- FROM python:latest WORKDIR /app/ COPY ./main.py /app/ COPY ./routers /app/routers COPY ./pydantics /app/pydantics COPY ./controller /app/controller COPY ./tmp /app/tmp COPY ./requirements.txt /app/ RUN pip3 install -r requirements.txt CMD uvicorn main:app --reload -------------------- 이런 방식으로 만들었는데 어떻게 여기서 Java를 추가 하는지 알려주세요 ㅠㅠ ENV sudo yum install java-1.8.0-openjdk 답답해서 위와 같은 방법을 했는데 (직접 설치하기 ) 이 방법은 에러가 나더라고요 Komoran를 사용하시는 선배님들 배포를 어떻게 하셨는지 궁금합니다 -> 지금 환경에서 서버는 CloudType 이라는 서버를 사용할 거라 제가 추가 설치를 할 수 없습니다 그래서 도커를 이용해 컨테이너화 후 배포할 생각입니다
답변 1
인기 답변
삭제된 사용자
2023년 11월 06일
안녕하세요. python 베이스 이미지에 java를 설치하는 방법도 있지만 java 베이스 이미지에 python을 설치해도 됩니다. 개인적으로는 python을 설치하는게 좀 더 쉽지 않을까? 하는 생각이 들기는 하네요 ㅎㅎ 이 과정이 설명된 글도 링크 하나 남깁니다. https://terrislinenbach.medium.com/an-alpine-openjdk-python-dockerfile-897e2a8fe400 구글에 install java to python docker image 같은 식으로 검색하셔도 참고할만한 글이 많이 나옵니다. 아니면 다른 사람이 만들어놓은 이미지(정상 동작하는지는 저도 확인은 못했습니다)를 사용하시는 것도 방법일 것 같구요. https://hub.docker.com/layers/rappdw/docker-java-python/openjdk1.8.0_171-python3.6.6/images/sha256-b1f07cad8f2c550db27a2feb6d6dcbd8c8d034cc5dc976faa45eb671d85c6c31?context=explore 작성하신 내용 중에 ENV sudo yum ~~~ 부분은 ENV 명령어를 잘못 사용하신게 아닐까 싶습니다. ENV 명령어는 환경변수를 세팅할 때 사용하는 명령어라고 알고 있고 sudo yum ~~~ 같은 명령어를 실행시키고 싶을 땐 ENV 대신 RUN 을 사용하시면 될 것 같습니다. 그리고 python 이미지 기준으로, RUN sudo yum install ~~ 과 같이 sudo를 사용하려면 USER root 같은 명령어를 사용해 sudo를 사용할 수 있는 권한을 얻어야 할 것 같습니다. 핸드폰으로 적다보니 설명이 제대로 되었는지 모르겠네요..! 혹시 더 궁금하신 내용이 있다면 말씀해주세요~
NickSoon
작성자
스타트업 개발자 • 2023년 11월 06일
대박 감사합니다~~ 지금은 우분투 환경으로도 도커를 사용 할 수 있다는 놀라운 사실을 알아 우분투 환경으로 설치 후 실행하는 소스로 하고 있습니다 그래도 알려주신 방법들을 참고해야겠어요 계속해서 도커는 공부해야 할 것 같더라고요 지금 도커의 신세계를 맛보고 있습니다 ㅠㅠ 감사합니다
익명
작성자
2023년 11월 06일
저도 도커는 쓸때마다 새롭고 항상 공부해야할게 많더라구요..ㅎㅎ 그래도 한번 빡세게 겪어보시면 앞으로 엄청 쉽게쉽게 하실겁니다 화이팅하세요!
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
커리어리 AI 봇
GPT가 달아주는 답변입니다.
2023년 11월 05일
도커 이미지에 자바를 추가하려면 Dockerfile에 적절한 명령을 입력해야 합니다. 파이썬 이미지 `python:latest`는 Debian 기반입니다, 그래서 apt-get을 사용해서 패키지를 설치할 수 있습니다. Dockerfile을 다음과 같이 업데이트 해보세요: ```bash FROM python:latest WORKDIR /app/ COPY ./main.py /app/ COPY ./routers /app/routers COPY ./pydantics /app/pydantics COPY ./controller /app/controller COPY ./tmp /app/tmp COPY ./requirements.txt /app/ # Java 설치하기 RUN apt-get update && \ apt-get install -y openjdk-11-jdk && \ rm -rf /var/lib/apt/lists/* RUN pip3 install -r requirements.txt CMD uvicorn main:app --reload ``` 위의 Dockerfile은 OpenJDK 11을 설치합니다. 필요에 따라 다른 버전의 JDK를 설치할 수도 있습니다. 참조로, `apt-get update`는 사용 가능한 패키지 목록을 최신 상태로 유지하는 데 사용되고, `apt-get install -y openjdk-11-jdk`는 OpenJDK 11 JDK를 설치하는 데 사용됩니다. 마지막으로, `rm -rf /var/lib/apt/lists/*`는 필요 없는 파일들을 제거하여 도커 이미지 크기를 줄입니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!