docker hub push 불가능
해결됨
개발자를 위한 쉬운 도커
안녕하세요, 수강생 입니다! 우선 유익한 강의 해주셔서 감사합니다. docker hub 계정으로 로그인하고 push를 했는데 denied 되었어요 ㅠㅠ 왜 그런걸까요?
- docker
- 가상화
- ci/cd
- docker-compose
- github-actions
- docker-volume
- container
172만명의 커뮤니티!! 함께 토론해봐요.
해결됨
개발자를 위한 쉬운 도커
안녕하세요, 수강생 입니다! 우선 유익한 강의 해주셔서 감사합니다. docker hub 계정으로 로그인하고 push를 했는데 denied 되었어요 ㅠㅠ 왜 그런걸까요?
해결됨
코딩테스트 [ ALL IN ONE ]
글에 두서가 없어도 양해 바랍니다 이 수업 수강 이전에 코딩 문제를 풀 때 파이썬으로 재귀함수를 사용했던 적이 있습니다. 그때 알게 된것이 파이썬의 재귀함수에는 기본적으로 깊이의 제한이 있다는 것입니다. sys.recursionlimit()으로 확인해보니 재귀호출을 1000이상 못하도록 값이 제한되어 있고 이 값을 늘려서 사용하는것은 별로 추천되는 방법이 아닌걸로 알고 있습니다. C언어 사용할때에는 속도면에서 제한도 없고 파이썬보다 속도도 월등하다보니 재귀를 자주 사용했었는데 파이썬에서 재귀함수로 풀어야 하는 경우가 있을까요?
해결됨
5분빨리 퇴근하자! 파이썬 데이터 분석, 시각화, 웹 대시보드 제작하기
age_bin_list = np.arange(10, 80, 10) df['age_bin'] = pd.cut(df['age'], bins = age_bin_list) pivot_df = df.pivot_table( index = 'age_bin', columns = 'region', values = 'charges', aggfunc = 'median' # 각 구간에 해당하는 값을 중간값을 사용하겠다. ) pivot_df # 각각의 값들에 대해 크기를 가늠할 수 있게끔 시각화(주로 색상)하는 방법 # 2D 형식으로 준비된 데이터를 Seaborn heatmap으로 시각화 # annot 인자를 통해 각 셀의 값 표현 가능 fig, ax = plt.subplots() sns.heatmap(pivot_df, ax = ax, annot = True) 코드 똑같이 따라했는데 왜 저는 표에 수치가 다 표현이 안되는 건가요?
해결됨
실리콘밸리 엔지니어가 가르치는 파이썬 장고 웹프로그래밍
안녕하세요 강사님 ㅎㅎ 현재 챕터도 이전과 같은 증상인데 어떻게 확인하면 좋을까요? Github snapshot: https://github.com/dimz119/learn-python-django/tree/form_view 에서 다운받아서 실행시켜도 제가 작성한 코드랑 똑같은 문제가 발생하는데 확인할수있는 방법이있을까요??
미해결
url = " https://image.dcinside.com/viewimage.php?id=&no=24b0d769e1d32ca73de985fa11d02831f8aadc88aabcff47e8021605d37bf1436ebb78a575eb9e18042afbf9848bfd403905acb77b9ac250540b76e4781bf2 " # 헤더 추가 headers = { 'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36' , } # 이미지 다운로드 response = requests . get ( url , headers = headers ) print ( response . content ) img_data = BytesIO ( response . content ) # BytesIO 객체에서 이미지 열기 img = Image . open ( img_data ) # 이미지 저장 (optional) img . save ( "downloaded_image.jpg" ) response.content를 출력하면 b'' 이 값을 출력하게 되는데 원인을 잘 모르겠습니다.
해결됨
개발자를 위한 쉬운 도커
안녕하세요! 강의 항상 잘듣고 있습니다. Dockerfile 지시어 강의를 수강 중에 node.js로 된 프로젝트를 Dockfile을 작성해서 이미지를 빌드하는 중에 이런식으로 run 명령어를 통해 이미지를 실행시켜도 ps로 확인해보면 올라가 있지 않습니다. 제가 어느 부분을 놓치고 있는지 궁금합니다.
해결됨
5분빨리 퇴근하자! 파이썬 데이터 분석, 시각화, 웹 대시보드 제작하기
groupby를 사용하면 에러는 아니고 경고가 뜹니다. FutureWarning: The default of observed=False is deprecated and will be changed to True in a future version of pandas. Pass observed=False to retain current behavior or observed=True to adopt the future default and silence this warning. chatGPT: 이 경고는 Pandas의 value_counts() 메서드를 사용할 때 발생하는 것으로 보입니다. 이 경고는 현재 버전의 Pandas에서는 observed 매개변수의 기본값이 False 이지만, 향후 버전에서는 True 로 변경될 것이라는 것을 알려주는 것입니다. 즉, 향후에는 observed=False 를 명시적으로 지정하지 않으면 경고가 표시될 것입니다. 이러한 경고를 피하려면 value_counts() 를 호출할 때 observed=False 를 명시적으로 전달하면 됩니다. 예를 들어: import pandas as pd # 예제 데이터프레임 생성 df = pd.DataFrame({'Category': ['A', 'B', 'A', 'C', 'B', 'A']}) # value_counts() 호출 시 observed 매개변수 명시 counts = df['Category'].value_counts(observed=False) print(counts) 이렇게 하면 경고가 발생하지 않습니다. 하지만 향후 Pandas 버전에서는 이러한 변경이 기본 동작이 되므로 observed 매개변수를 사용하여 코드를 업데이트하는 것이 좋습니다. -> 근데 이게 무슨 말인지 모르겠습니다! 뭐... 대충 업데이트 할 건데, 오류가 생길 수 있으니 미리 대비를 해라~ 이런 거 같은데 정확히 무슨 뜻인지 모르겠습니다!
해결됨
Airflow 마스터 클래스
Admin-Variable 에서 변수 입력을 보고있는데요, 공식 홈페이지를 뒤져도 저 리스트가 보이지 않는데 혹시 사이트 url 을 알수 있을까요?
해결됨
5분빨리 퇴근하자! 파이썬 데이터 분석, 시각화, 웹 대시보드 제작하기
파이썬에서는 print() 구문이 굉장히 중요하다고 들었는데, 주피터랩에서는 print 없이 df만 써도 표가 나오는 이유는 왜인가요? print(df)를 했을 때는 표가 아니라 글로 나오네요.! 차이가 궁금해서 질문 남깁니다.
해결됨
개발자를 위한 쉬운 도커
해당 NAT 테이블 예시에 글자가 NAT 테이블 예시와 포트포워딩 예시와 같이 겹쳐서 보이는 것 같습니다.
해결됨
실무에서 사용하는 클라우드 보안 프로그래밍 (AWS, Python, Terraform)
기존 질문이 삭제되어 헷갈리실 다른 분들을 위해 자문자답 형태로 남겨둡니다. Python의 경우 어느 곳에서 다운로드 받느냐에 따라 다양한 경로에 다양한 버전이 생길 수 있습니다. 첨부해주신 사진을 봤을 때, /usr/bin/python3 를 통해 boto3를 import 하시려면, /usr/bin/pip3 를 통해 boto3를 다운로드 해주셔야 될 것 같습니다.( /usr/bin/python3 를 입력해서 실행했을 때와 python3 를 입력했을 때 버전을 비교해보시면 좋습니다.) 간단한 해결 방법으로는 /usr/bin/python3 가 아닌 그냥 python3 로 실행해주시면 될 것 같습니다. 만약 해결되지 않는다면, 현재 boto3가 설치된 경로에 있는 Python 실행 파일을 통해 파일을 실행해주시면 됩니다. 이런 번거로운 절차가 귀찮으시면, 1.3. Python 실행 단축키 설정 을 참고하셔서 실행 설정을 해주시고, vscode에서 cmd + shift + p 입력 후, Python: Select Interpreter 를 입력해주신 후에 실행하고 싶은 Python3 경로를 선택해주시면 됩니다. 또는, 우측 하단에 아래 그림과 같이 나오는 부분에서 버전을 클릭하시면 위 그림이 나오게 됩니다. 이후에는 cmd + enter 를 통해 쉽게 실행 가능합니다! 해보시고 안되시면 다시 말씀 부탁드리겠습니다.
해결됨
개발자를 위한 쉬운 도커
안녕하세요. 강의 6분 39초 때에 나오는 docker cp 단축어가 Part 5 컨테이너 애플리케이션 구성 에서 확인되지 않는 것 같습니다. 6분 39초 우측 상단에 part3. 이미지 레지스트리 에서도 보이지 않는 것 같아서 혹시 누락된 게 아닌가 여쭤봅니다. 이렇게 좋은 강의를 만들어주셔서 고맙습니다.
해결됨
개발자를 위한 쉬운 도커
강의 14:50 쯤에 제가 이해한 바로는 맥에서는 도커데스크탑인 가상머신을 사용하기 때문에 저 경로가 도커 데스크탑에서의 볼륨 경로이고 여기에 실제 데이터를 저장한다고 이해했습니다. 그렇다면 만약 도커 데스크탑을 삭제한다면 여기에 저장된 데이터들은 없어지는건가요? 그리고 저 경로에 왜 접근이 힘든건지 잘 모르겠습니다.
해결됨
개발자를 위한 쉬운 도커
안녕하세요, 좋은 강의 잘 듣고 있습니다. PART2의 강의자료인 "이미지와_컨테이너 PDF"의 4, 5페이지의 그림을 보면 컨테이너 역시 OS를 포함하는 것으로 표현되어 있습니다. 강사분께서 nginx를 예를 들어주실 때에도 nginx 이미지를 만들때 OS가 포함된다고 설명해 주시 기억이 납니다. 다만 보통 블로그나 유튜브 등에서는 VM과 컨테이너 방식을 비교할 때 "컨테이너에는 OS가 포함되지 않는다, 그래서 빠르다"고 표현하는 것을 종종 보아왔기에 이 부분이 헷갈립니다. 5페이지의 그림을 잘 보면 컨테이너들은 각각 OS를 포함하고 있고, 커널은 HOST OS의 것을 공유하는 것으로 이해됩니다. 이말은 컨테이너에 포함된 OS는 커널을 포함하고 있지 않는 것인가요? 즉, "각 컨테이너들은 커널을 포함하고 있지 않고 (단, OS는 포함하고 있음) 호스트의 커널을 공유하기때문에 커널이 포함되어 있는 전체 OS를 모두 가지고 실행되는 VM대비 가볍다" 라고 이해해도 무방할까요? 제가 시스템, OS 쪽 지식이 너무 얕습니다. 초보적인 질문이라도 양해부탁드립니다.
미해결
Airflow 마스터 클래스
안녕하세요. 좋은 강의 감사히 잘 들었습니다. 강의에서 궁금한 점이 있어서 질문 드립니다. 1) 첫 번째 질문 강의 제목 : 외부 파이썬 함수 수행하기 환경 구성 : macOS, Docker, Airflow 2.7 문의 내용 : 강의 초반에 언급한 환경변수로 설정하는 방법 상세 내용 : 강의 후반에 알려주신 내용은 방법을 이해했습니다. 다만 초반에 알려주신 항목 중 sys.path 는 명시적 구현이라 쉽게 가능했으나, 환경변수 쪽은 찾아봐도 쉽게 이해가 안 돼서 질문하게 됐습니다. 복습하면서 여러 방법을 알면 좋을 것 같아서 질문 드립니다. 2) 두 번째 질문 강의 제목 : 없음 환경 구성 : Docker 설치 시 생성하는 디렉터리 이외에 추가 디렉터리 생성 후 볼륨 마운트. 예를 들어 utils 라는 디렉터리를 생성 후 docker-compose.yaml 의 volumes 에 ${AIRFLOW_PROJ_DIR:-.}/utils:/opt/airflow/utils 를 추가 할 경우 문의 내용 : 추가로 디렉터리 생성할 경우 plugins 디렉터리 외에서 py 파일을 읽어야 하는 경우 상세 내용 : 첫 번째 질문과 유사하게 환경변수에 관한 질문일 것 같습니다. 새로운 디렉터리를 생성해서 작업할 때 경로를 인식 시켜야 하는데, sys.path 로만 하는 것은 번거로운 것 같아서 어떤 방식으로 접근을 하면 좋을지 조언을 듣고 싶습니다. 간략하게 정리하면 plugins 디렉터리 이외의 환경도 같이 사용을 하는 방법이 궁금합니다. 3) 세 번째 질문 강의 제목 : 없음 환경 구성 : 1, 2와 동일 문의 내용 : 새로운 패키지 설치 할 때 설치 방법 및 운영 관리 노하우 상세 내용 : docker compose 할 때 yaml 에 PIPADDITIONAL_REQUIREMENTS 부분에 설치할 패키지 목록을 입력해서 설치를 하고 있습니다. 이렇게 해도 되는 것 같긴한데, 나중에 더 많은 패키지를 설치하게 될 경우 좋지 않은 형태라고 생각이 들었습니다. 실제로 현업에서 업무를 하실 때 다양한 패키지를 어떤 식으로 설치 및 운영 관리 하시는지 궁금합니다. 감사합니다. 다른 강의도 기대하겠습니다.
미해결
pip를 통해서 face-recognition 모듈을 설치하려는데 아래 사진과 같은 오류가 계속 발생합니다. pip 버전은 제일 최신 버전 파이썬 버전은 3.11.4 인터넷 보니 CMake를 설치하래서 일단 CMake 버전은 3.28.1입니다 아 dlib도 pip말고 직접 설치하래서 했더니 밑에 빨간 글자를 제외하고 위에 'subprocess.CalledProcessError' 부분과 똑같은 오류가 발생하더군요 이걸로 계속 고통받다 마지막으로 질문해봅니다 ㅠ
해결됨
개발자를 위한 쉬운 도커
이미지 커밋 예제를 보면 docker commit -m "edited index.html by devwiki" -c 'CMD ["nginx", "-g", "daemon off;"]' officialNginx (개인레지스트리명)/commitnginx 를 통해 이미지를 커밋하고있습니다. 이때 -c 'CMD ["nginx", "-g", "daemon off;"]' 옵션을 포함하지 않고 커밋하면 컨테이너가 정상적으로 실행되지 않고 곧바로 Exited되는 것을 확인하였습니다. 커밋시 -c 'CMD ["nginx", "-g", "daemon off;"]' 를 포함해야 하는 이유가 궁금합니다.
해결됨
개발자를 위한 쉬운 도커
docker run -d -p 8080:3000 --name defaultColorApp devwikirepo/envnodecolorapp 제가 이해하고 있는 부분 해당 도커 실행 명령어 중 docker run -d -p 8080:3000 명령어는 호스트의 8080 포트를 컨테이너의 3000 포트에 매핑하여 실행한다. 제가 시도한 부분 docker run -d -p 8080:3000 docker run -d -p 8080:3001 로 내부 컨테이터 포트를(3000 -> 3001) 바꾸게 되면 동작하지 않습니다. 제 생각에는 해당 이미지에 할당된 포트번호 있다고 예상했고 docker image inspect devwikirepo/envnodecolorapp 을 실행 후 해당 이미지 Json에 포트번호가 있는것을 확인했습니다. "ExposedPorts": { "3000/tcp": {} }, 제가 궁금한 부분 1. "ExposedPorts" 의 "3000/tcp": 내부 컨테이너 포트번호는 별도로 세팅할 수 없나요? 2. 제가 시도하여 찾은 "ExposedPorts"의 "3000/tcp": {} 이 docker run -d -p 8080:3000 명령어의 :3000 과 같나요? 3. 8080:3001 로 내부 컨테이너 포트번호를 변경 시 컨테이너 실행은 정상적으로 되지만 왜 Nginx에 접속할 수 없는 걸까요?
해결됨
개발자를 위한 쉬운 도커
안녕하세요. 강의에서 말씀하신 docker commit -m "edited index.html by devwiki" -c 'CMD ["nginx", "-g", "daemon off;"]' officialNginx kimminho0428/commitnginx:1.0 위의 커맨드로 official Nginx 커밋을 시도했으나 commit이 되지 않아 문의드립니다. docker ps 명령어로 확인할 때 nginx 컨테이너는 실행 중이나 이런 현상이 발생했습니다. 문법상의 오류로 보이는데 답변부탁드립니다. 감사합니다.
해결됨
개발자를 위한 쉬운 도커
안녕하세요 docker 수업 잘 듣고 있습니다. 다름이 아니라 frontend 부분 빌드한 후 /app/dist -> /usr/share/nginx/html 하게 되면 404 error 가 뜨게 됩니다. conf file 에서 경로를 못찾는게 아닐까 합니다... 그래서 확인해본 봐로는 /etc/nginx/nginx.conf http { server { listen 80; # 삭제 가능 server_name localhost; #삭제 가능 location / { root /usr/share/nginx/html; index index.html index.htm; try_files $uri $uri/ /index.html; } } 을 삽입 하면 잘 됩니다. 혹시 강의 하신 내용에서는 이부분이 없느데도 잘 작동하는데 이유를 알 수 있을까 해서 질문 드립니다. 감사합니다.