29,700원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 해결됨초보를 위한 도커 안내서
컨테이너간 통신 질문
안녕하세요 :)좋은 강의를 통해 학습하고실제 프로젝트를 도커 이미지화 해보려고 노력하고 있습니다 이 과정에서 궁금증이 생겼는데요 현재 react + nginx 를 사용한 클라이언트단 이미지를 만들어서 컨테이너를 생성하고,mysql 이미지를 통해 컨테이너를 생성하고,spring boot 프로젝트를 빌드하여 이미지 생성, 컨테이너 생성하였습니다. network를 생성하여 3개의 컨테이너를 하나의 network로 묶어두었는데 클라이언트앱에서 서버 api를 호출할 때, 로컬에서만 작업을 했다보니까 POST localhost:8080/api/user/signup 이런식으로 호출을 하고 있습니다. 저는 같은 네트워크로 묶었고, 포트80으로 연결을 해서 통신이 될거라고 생각을 했는데 엔진엑스에서 405 Not Allowed가 뜨네요ㅠㅠㅠapi 호출하는 기본 url을 서버단 컨테이너의 ip주소로 해야한다거나 통신하는 방법이 따로 있을까요 ..?+ 도커 컴포즈 depends on 이나 link를 사용하지 않을 경우서버 컨테이너를 먼저 띄우고, 클라이언트 컨테이너를 띄울때 주는 옵션이나 이런게 있을까요 ?
- 미해결초보를 위한 도커 안내서
php 실습 관련
수업에서 배운 내용만으로는 실습 이해가 잘 안되어서 문의드립니다. 답안에서 $ docker run --rm \ -v $(pwd)/hello.php:/app/hello.php \ php:7 \ php /app/hello.php 라고 써주셨는데, 각 부분이 담당하는 의미? 기능을 설명해주실 수 있으신가요? 잘 이해가 가지 않습니다. $(pwd)/hello.php = 이 부분은 제 로컬 컴퓨터에 만들어놓은 php 파일을 의미하는 것이겠죠..? :/app/hello.php = 이 부분은 구체적으로 무엇을 의미하는 것인가요? php:7 = 이것은 php:7 이미지를 사용한다는 뜻인가요..? php /app/hello.php = 이 부분은 왜 다시 나오는건지도 잘 이해가 가지 않습니다; 그리고 답안대로 작성하면 /usr/local/bin/docker-php-entrypoint: 9: exec: php/app/hello.php: not found 이라는 에러가 뜨는데 이건 무슨 뜻이죠?
- 미해결초보를 위한 도커 안내서
vmmem 메모리 문제
도커를 설치한 이우에 작업 관리자에 들어가면 vmmem 이라는 파일이 메모리를 엄청 잡아먹고 있는데요 제가 도커를 항상 사용하는 것은 아니어서, 사용할때만 켜놓고 싶은데, 작업 끝내기를 하면 액세스가 거부되었습니다라는 오류가 뜹니다. 인터넷을 찾아봐도 이 문제에 대한 해결책은 보이지 않는데, 이것을 사용할때만 켜놨다가 다시 끌수 있는 방법이 있나요?
- 미해결초보를 위한 도커 안내서
docker version 질문
docker를 설치해서 docker version을 명령 프롬프트에 치면 client는 아래와 같이 cloud integration 이라고 나옵니다. 이렇게 해도 괜찮은 건가요? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
- 미해결초보를 위한 도커 안내서
run -it -d 에 대하여 궁금한 점이 있습니다.
안녕하세요. 좀 궁금한 게 있는데요, ubuntu 이미지를 run 할 때는 -it (-d) 를 써야만 동작이 되는데, redis 이미지의 경우에는 run을 할 때 -it (-d) 를 굳이 안써도 잘 동작됩니다. 대체 둘 사이에 어떤 차이가 이런 결과를 낳는 걸까요?
- 미해결초보를 위한 도커 안내서
제가 놓친 부분이 있는지, 과제의 업데이트가 필요한건지 확인 부탁드립니다.
여러가지를 시도를 했는데 결국 안되서 강사님의 답안을 실행해봤습니다. db_data 볼륨을 지우지 않아서 생기는 이슈가 발생했던 것 외에는 백엔드는 잘 실행됐습니다. 마이그레이션 디렉토리의 테이블들도 다 잘 마이그레이션 됐구요. 하지만 현재 https://hub.docker.com/r/hasura/graphql-engine에서 안내해주는 태그들에는 강사님이 사용하신 cli-migrations이 아닌 cli-migrations-v2, -v3만 나와있으며, 이 이미지들로 제가 시도했을 때는 마이그레이션에 실패해 테이블들이 보이지 않았습니다. 그리고 프론트엔드는 아래와 같은 에러가 발생하고 있습니다. chatapp_1 | /usr/local/lib/node_modules/serve/node_modules/camelcase/index.js:3 chatapp_1 | const UPPERCASE = /[\p{Lu}]/u; chatapp_1 | ^ chatapp_1 | chatapp_1 | SyntaxError: Invalid regular expression: /[\p{Lu}]/: Invalid escape chatapp_1 | at Object.<anonymous> (/usr/local/lib/node_modules/serve/node_modules/camelcase/index.js:3:19) chatapp_1 | at Module._compile (module.js:653:30) chatapp_1 | at Object.Module._extensions..js (module.js:664:10) chatapp_1 | at Module.load (module.js:566:32) chatapp_1 | at tryModuleLoad (module.js:506:12) chatapp_1 | at Function.Module._load (module.js:498:3) chatapp_1 | at Module.require (module.js:597:17) chatapp_1 | at require (internal/module.js:11:18) chatapp_1 | at Object.<anonymous> (/usr/local/lib/node_modules/serve/node_modules/boxen/index.js:6:19) chatapp_1 | at Module._compile (module.js:653:30) 저는 아래와 같은 docker-compose.yml 로 시도해봤는데, 고쳐야할 부분이 있다면 알려주시길 부탁드리겠습니다. version: "3" services: postgres: image: postgres restart: always volumes: - db_data:/var/lib/postgresql/data environment: POSTGRES_HOST_AUTH_METHOD: trust backend: image: hasura/graphql-engine:latest.cli-migrations-v3 ports: - "60004:8080" depends_on: - "postgres" restart: always environment: HASURA_GRAPHQL_DATABASE_URL: postgres://postgres:@postgres:5432/postgres HASURA_GRAPHQL_ENABLE_CONSOLE: "true" # set to "false" to disable console ## uncomment next line to set an admin secret # HASURA_GRAPHQL_ADMIN_SECRET: myadminsecretkey # HASURA_GRAPHQL_MIGRATIONS_DIR: /hasura-migrations volumes: - "./hasura/migrations:/hasura-migrations" frontend: build: . restart: always ports: - "60003:8080" depends_on: - "backend" volumes: db_data:
- 미해결초보를 위한 도커 안내서
SSL 에러 관련 질문드려도 될까요?
좋은 강의 감사드립니다. 예시 명령어를 기반으로 도커+워드프레스 띄우기에 성공하여 웹페이지를 만들었습니다. (사내 ubuntu 서버) 그런데 언제부터인지 테마나 플러그인을 서버 검색이 불가해지고, (예상하지 않은 오류가 발생했습니다.) 유료 플러그인 라이센스 처리시에도 에러가 나더라구요 (Curlj ERROR 60: SSL certificate problem: self signed certificate in certificate chain) 일단 도커컨테이너 내부 문제인지, 서버자체 문제인지 조차 파악이 안되는데(SSL도 잘 몰라서 구글링하면 이리저리 해보긴 했으나 해결이 잘 안됐어요) 혹시 도움 주실 수 있는 부분이 있으실까요?ㅜ 감사합니다.
- 미해결초보를 위한 도커 안내서
window 실수 공유합니다
cmd를 쓰지 않고 powershell을 썼더니 알려주신 게 하나도 동작을 안 했습니다 ㅎㅎ그래서 '맥 기준으로 수업하시나?'했는데 아니었습니다... 다른 분들도 뭔가 계속 잘 안 되면 powershell을 쓰고 있는 건 아닌지 확인해보세요!
- 미해결초보를 위한 도커 안내서
에러 해결경험 공유
안녕하세요, 도커 기본 명령어(run) 강의에서의 에러 해결경험 공유합니다. 사용 환경은 m1 맥 입니다. 1. hashicorp 설치 에러 에러내용 -> WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested 해결방법 -> hashicorp 는 아직 m1맥 미지원이므로 hashicorp/http-echo 대신 jxlwqq/http-echo 입력합니다. 2. telnet 명령어 에러 에러내용 -> zsh: command not found: telnet 해결방법 -> 맥OS에서는 하이시에라 버전 이후 기본적으로 터미널에서 telnet 명령를 제공하지 않게 되었습니다. hombrew 설치 후 telnet 설치(brew install telnet)하여 사용합니다. 3. mysql 설치 에러 에러내용 -> docker: no matching manifest for linux/arm64/v8 in the manifest list entries. 해결방법 -> mysql 실행하는 docker run 명령어의 옵션으로 --platform linux/x86_64 를 추가해줍니다. 4. mysql grant 에러 에러내용 -> ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'identified by 'wp'' at line 1 해결방법 -> mysql 최신버전은 관련 명령어 스타일이 약간 다르므로 mysql 설치할 때 5.7 버전을 뒤에 명시하여(mysql:5.7) 다시 설치해줍니다. 참고로 현재 실행중인 컨테이너는 docker ps 로 확인할 수 있으며, docker -rm -f [해당하는 CONTAINER ID 혹은 NAMES] 로 컨테이너를 지우고 다시 설치하면 됩니다. 5. 워드프레스 실행시 database 미연결 에러 에러내용 -> 브라우저 접속시 'Error establishing a database connection' 해결방법 -> 4번 에러를 해결했다면 잘 연결될겁니다. 혹시 mysql의 포트를 다르게 바꿨다면 워드프레스 실행 명령어 중간에 host.docker.internal:바꾼포트 로 바꾸면 됩니다.
- 미해결초보를 위한 도커 안내서
도커에서 사용하는 OS
안녕하세요. 도커에는 따로 guest OS가 필요 없다면 도커 컨테이너에서 동작하는 프로세스의 OS는 어디에 있나요? 도커에서 제공하는 OS가 있는 건가요? 아니면 Host OS를 사용하는 건가요?
- 미해결초보를 위한 도커 안내서
맥 m1에서는 하시코프가 동작하지 않나요?
아래와 같은 에러가 발생합니다. WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested runtime: failed to create new OS thread (have 2 already; errno=22) fatal error: newosproc runtime stack: runtime.throw(0x6955a0, 0x9) /usr/local/go/src/runtime/panic.go:596 +0x95 runtime.newosproc(0xc420022000, 0xc420032000) /usr/local/go/src/runtime/os_linux.go:163 +0x18c runtime.newm(0x6a4348, 0x0) /usr/local/go/src/runtime/proc.go:1628 +0x137 runtime.main.func1() /usr/local/go/src/runtime/proc.go:126 +0x36 runtime.systemstack(0x7cc200) /usr/local/go/src/runtime/asm_amd64.s:327 +0x79 runtime.mstart() /usr/local/go/src/runtime/proc.go:1132 goroutine 1 [running]: runtime.systemstack_switch() /usr/local/go/src/runtime/asm_amd64.s:281 fp=0xc42001e788 sp=0xc42001e780 runtime.main() /usr/local/go/src/runtime/proc.go:127 +0x6c fp=0xc42001e7e0 sp=0xc42001e788 runtime.goexit() /usr/local/go/src/runtime/asm_amd64.s:2197 +0x1 fp=0xc42001e7e8 sp=0xc42001e7e0
- 미해결초보를 위한 도커 안내서
vm centos7설치해서 도커 이미지 만들기 - 기본 진행중인데
다른분들 우분투 이미지만들고 컨테이너안에들어가서 git설치 되나요?
- 미해결초보를 위한 도커 안내서
요즘은 질문 답변 안해주시나요??
며칠째 답변 기다리고 있네요 ㅠ
- 미해결초보를 위한 도커 안내서
nodejs baseimage에 대한 질문입니다.
FROM node:12 와같이 베이스이미지를 지정해주면 빈 리눅스에 node가 추가된 컨테이너가 생긴다고했는데요. 여기서 빈 리눅스라는게 어느 계열의 리눅스인지가 궁금합니다. ubuntu인지? centos인지?
- 미해결초보를 위한 도커 안내서
워드프레스 접
안녕하세요 제가 DB까지 만들어 진거 확인하고 MySQL , 워드프레스 까지 도는거 확인하고 브라우저로 여는데 계속 Error establishing a database connection 이오류가 계속 뜨네요 ㅜㅜ 뭐가 문제일까요?? 삭제하고 다시만들어도 결과는 똑같네요 ㅜㅜ
- 미해결초보를 위한 도커 안내서
5678/5678
5678 포트로 하시코프5678 연결하는 부분에서는 제가 5678로 연결을 시키고 curl을 치면 오류가 이렇게 나오는데 ㅜㅜ 이건 어떻게 된건가요??
- 미해결초보를 위한 도커 안내서
db를 volume으로 연결했는데 왜 로컬 PC에는 아무 파일들이 안보일까요?
아래첨부파일을 보시면 네모친 경로에 볼륨으로 연결해놨는데 왜 MYSQL관련 파일이 로컬 PC에 생기지 않는걸까요? wordpress는 폴더에 여러 파일들이 생성되었는데 말이죠. 이부분 궁금합니다!
- 미해결초보를 위한 도커 안내서
스프링 이미지업로드 경로
스프링부트에서 이미지 경로를 file:path:/var/lib/photo 로 설정한 뒤에 compose 에서 볼륨 옵션으로 ./photo:/var/lib/photo 이렇게 설정을 했습니다. 근데 이미지파일을 업로드 해도 화면상에서는 잘 보이는데 exec bash 명령어로 해당 폴더에 들어가보아도 .png 파일이 보이지 않습니다. ㅠㅠㅠㅠㅠ 이런 경우 파일업로드 경로를 다르게 해주어야하나요??
- 미해결초보를 위한 도커 안내서
환경변수 이름
GUESTBOOK_DB_ADDR: mongodb:27017 여기서 mongodb는 컨테이너의 이름을 의미하는 것인가요? 27017는 컨테이너의 포트번호를 의미하는 것인가요? GUESTBOOK_DB_ADDR라는 환경변수의 이름은 어떻게 정해지고 쓰이는것인지 궁금합니다.
- 미해결초보를 위한 도커 안내서
컴포즈 볼륨 질문
볼륨의 경우 로컬 디렉토리를 만들어 wordpress 에서 디비 컨테이너를 삭제하고 다시 띄워도 기존 데이터가 그래도 wordpress에 적용되는 것을 볼수 있었습니다. 실험삼아 compose down을 하고 다시 up을 하니 기존 데이터가 날라가고 wordpress도 다시 설치하라고 뜨더군요.. wordpress 컨테이너까지 삭제하고 다시 띄우는 경우 왜 기존 데이터가 유지 되지 않는지 궁금합니다. 또한 compose의 경우 db 컨테이너만 삭제하고 다시 띄우는 방법은 없는것인지 궁금합니다.