묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
도커 컨테이너 끼리 SSL 통신 시 문제가 생깁니다..
안녕하세요. 로컬 PC에서 elasticsearch를 도커 컨테이너로 구동하고 ( elasticsearch 8버전 ) python 프로젝트 ( python 3.11 버전 ) 는 로컬 ide에서 구동했을 때는 python 프로젝트 에서 --> elasticsearch 도커 컨테이너 까지의 https 요청이 정상적으로 수행되었습니다. 그런데 python 프로젝트를 컨테이너로 띄워서 elasticsearch 도커 컨테이너로 https 요청을 보내면 [ SSL routines:ssl3_read_bytes:sslv3 alert illegal parameter ] 이런 에러가 계속 발생합니다.python 프로젝트의 openssl 버전은 1.1.1w이고 elasticsearch 프로젝트의 openssl 버전은 1.1.1f 입니다. oepnssl로 디버깅 하기위해 openssl s_client -connect inspiring_noether:9200 -tls1_2 -CAfile ./http_ca.crt 를 실행하면 아래와 같이 출력됩니다.. 디버깅으로 보면 정상 통신으로 보이는데 어떤게 문제일까요,,?ㅠCONNECTED(00000003) Can't use SSL_get_servername depth=1 CN = Elasticsearch security auto-configuration HTTP CA verify return:1 depth=0 CN = a7cf2750c76a verify return:1 --- Certificate chain 0 s:CN = a7cf2750c76a i:CN = Elasticsearch security auto-configuration HTTP CA 1 s:CN = Elasticsearch security auto-configuration HTTP CA i:CN = Elasticsearch security auto-configuration HTTP CA --- Server certificate --- http_ca.crt 인증서 내용 ---- subject=CN = a7cf2750c76a issuer=CN = Elasticsearch security auto-configuration HTTP CA --- No client certificate CA names sent Peer signing digest: SHA256 Peer signature type: RSA-PSS Server Temp Key: X25519, 253 bits --- SSL handshake has read 6541 bytes and written 281 bytes Verification: OK --- New, TLSv1.2, Cipher is ECDHE-RSA-AES256-GCM-SHA384 Server public key is 4096 bit Secure Renegotiation IS supported Compression: NONE Expansion: NONE No ALPN negotiated SSL-Session: Protocol : TLSv1.2 Cipher : ECDHE-RSA-AES256-GCM-SHA384 Session-ID: 362F6B5369DB4D85D09490F9D30E7DF66367B120D1EDEF9DF0013644F1D0FCA8 Session-ID-ctx: Master-Key: 5C3994FFD364BFF28A8990102CA6EDCC99D9F8AEBD0B9E2905DA3F9B6BE1CF3F8787648205B6F46AD3D1D8CA7A7EEA02 PSK identity: None PSK identity hint: None SRP username: None TLS session ticket lifetime hint: 86400 (seconds) TLS session ticket: ----- session ticket 내용 ----- Start Time: 1744073205 Timeout : 7200 (sec) Verify return code: 0 (ok) Extended master secret: yes
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
도표 강의 자료 사용이 불가합니다. (권한 문제)
파일을 불러오는 중 오류가 발생했습니다.파일을 찾지 못했습니다. 파일이 존재하지 않거나 읽기 권한이 없습니다. 라고 뜨는데, 파일이 없는 거 아닌가요? 권한은 전부 부여되어있는 상태입니다.그리고 보니까 이미지 상으로는 diagrams.net 인데 지금은 draw.io 로 바뀌어있더라고요. 이거 관련해서 관리자분이 설정을 따로 해주셔야 하는 거 아닌지... 조심스럽게 확인 요청 드립니다.
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
Docker compose 관련 공유
강의 내용 똑같이 따라해봐도 redis, node 버전 관련 문제로 실행할 수 없었습니다..!저는 아래 코드로 테스트 성공했으니 참고 부탁드려요! Dockerfile >>>> node version 16 FROM node:16 WORKDIR /usr/src/app COPY ./ ./ RUN npm install CMD [ "node", "server.js" ] package.json>>> redis version 4.7.0{ "name": "nodejs-docker-compose-app", "version": "1.0.0", "main": "server.js", "scripts": { "start": "node server.js", "test": "echo \"Error: no test specified\" && exit 1" }, "dependencies": { "express": "4.17.1", "redis": "4.7.0" }, "author": "", "license": "ISC", "description": "" } docker-compose.ymlversion: "3" services: redis-server: image: redis container_name: redis-server restart: unless-stopped expose: - 6379 node-app: depends_on: - redis-server build: context: . dockerfile: Dockerfile container_name: node-app restart: on-failure ports: - "8081:8080" server.jsconst express = require("express"); const redis = require("redis"); const app = express(); // Redis 클라이언트 생성 const client = redis.createClient({ socket: { host: "redis-server", port: 6379 } }); async function connectToRedis() { let connected = false; while (!connected) { try { await client.connect(); console.log('Connected to Redis'); connected = true; } catch (error) { console.error('Error connecting to Redis:', error); console.log('Retrying in 2 seconds...'); await new Promise(resolve => setTimeout(resolve, 2000)); } } } // Express 엔드포인트 설정 app.get('/', async (req, res) => { try { let number = await client.get('number'); if (number === null) { number = 0; } console.log('Number: ' + number); res.send("숫자가 1씩 올라갑니다. 숫자: " + number); await client.set("number", parseInt(number) + 1); } catch (error) { console.error('Error:', error); res.status(500).send('Redis 연결 오류'); } }); // 서버 시작 전에 Redis 연결 app.listen(8080, async () => { await connectToRedis(); // 서버 시작 시 Redis 연결 시도 console.log('Server is running on port 8080'); }); 모두 저장 후 터미널에서docker compose down docker compose up --build
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
트레비스가 유료화가 되어 테스트가 어려워 챕터8에서 고민중입니다.
트레비스가 유료화되어 챕터8에서 aws설정하는 부분까지만하고 멈춘 상태인데요 ㅎㅎ이후로는 트레비스를 통해 aws 반영하는 부분인 것 같더라고요. 혹시 남은 트레비스 부분을 제외하고 9장으로 넘어가도 괜찮을지 궁금합니다 ㅎㅎ
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
강사님 혹시 vscode 어떤 테마 쓰시나요..?
강사님 테마가 너무 좋은거 같아서 그런데.. 찾아봐도 똑같은게 없네요 ㅠㅠ
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
The instance profile aws-elasticbeanstalk-ec2-role associated with the environment does not exist.
https://ginghambagle.tistory.com/162이분 블로그 참고해서 오류 해소했습니다.
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
travis ci가 이제 유료화가 된 것 같습니다;;;
이거 무료로 할 수 있는 방법이 있을까요? 인강 진행이 안되네요.
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
docker-compose up 에러 공유 드립니다
docker-compose.ymlversion: "3.9" services: redis-server: image: 'redis' container_name: redis-container restart: unless-stopped ports: - "6379:6379" healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 5s timeout: 5s retries: 5 node-app: depends_on: redis-server: condition: service_healthy build: context: . dockerfile: Dockerfile container_name: node-app restart: on-failure ports: - "5000:8080" environment: - REDIS_URL=redis://redis-server:6379 server.jsconst express = require('express'); const redis = require('redis'); // Redis 클라이언트 생성 const client = redis.createClient({ url: process.env.REDIS_URL }); // Redis 연결 (async () => { try { await client.connect(); // 클라이언트 연결 console.log('Connected to Redis'); } catch (err) { console.error('Redis connection error:', err); } })(); const app = express(); // 초기값 설정 (async () => { try { await client.set('number', 0); } catch (err) { console.error('Failed to initialize Redis key:', err); } })(); app.get('/', async (req, res) => { try { // Redis 값 읽기 및 증가 const number = await client.get('number'); await client.set('number', parseInt(number) + 1); res.send(`숫자가 1씩 올라갑니다. ${number}`); } catch (err) { console.error('Error handling Redis operations:', err); res.status(500).send('Server error'); } }); app.listen(8080, () => { console.log('Server is running on port 8080'); }); node는 18버전 레디스 클라이언트 모듈은 4.7.0 입니다
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
Elastic Beanstalk에서 도메인 클릭시 react 이미지가 안나오고 다른 화면이 나오는데
Congratulations!Your Docker Container is now running in Elastic Beanstalk on your own dedicated environment in the AWS Cloud.This environment is launched with Elastic Beanstalk Docker PlatformVideo TutorialsYouTube: Run a Docker Container from the Docker RegistryYouTube: Use Private Docker RepositoriesSample AppsGitHub: PHP and Amazon RDSGitHub: Python, DynamoDB, and SNSDocumentationDeploying Docker with AWS Elastic BeanstalkAWS Elastic Beanstalk overviewAWS Elastic Beanstalk concepts이러한 화면이 나오는데 이것도 성공한 것인가요? 아니면 제가 배포한 화면이 나와야 하지 않나요??
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
도커 빌드 시간이 너무 오래걸려요..
너무 시간이 오래걸리길래 잠을 자고 왔는데도 빌드가 되지 않는 이유가 궁금합니다ㅠㅠㅠ 제 도커 설정에 뭔가 문제라도 있는걸까요??
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
docker-compose down 이후에도 containers에 redis가 남아 있는 이유
섹센6의 마지막 강의를 진행 중입니다. docker-compose up 명령어 이후, containers에는 redis가 남아 있습니다. node는 내려가고, redis는 유지되는 이유가 궁금합니다.
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
도커 볼륨이 작동이 안되는것 같아서 질문드립니다!
안녕하세요 덕분에 도커를 이해하기 시작한 수많은 수강생 중 한명입니다! 다름이 아니라 도커볼륨을 이용한 소스 코드 변경 강의에서 운영체제가 window라서 docker run -it -p 3000:3000 -v /usr/src/app/node_modules -v %cd%:/usr/src/app {이미지 이름} 를 해도 볼륨이 작동하지 않고 $(pwd) 로 바꾸어서 실행을 시켜봐도 실시간으로 수정이 되지 않아서 질문 드립니다!
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
docker-compose 가 Docker Desktop 에서 빠진건가요? command not found 라고 뜨네요
m1 pro 사용 중이고 docker desktop 설치되어 있습니다. 찾아보니 docker desktop 설치 시 docker compose 도 같이 설치된다고 하던데.. 커맨드 자체가 없는거보니 뭔가 바뀐것 같네요. 아래처럼 수동으로 설치도 잘 안돼서 진행을 못하고 있습니다..
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
Error response from daemon: The system cannot find the file specified.
Error response from daemon: The system cannot find the file specified.이런 오류가 뜹니다 DB 실행하면 . .
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
draw.io 오류
파일이 없거나 권한이 없다고 뜨는데 어떻게 해결해야할까요?
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
Docker Volume 오류(reference, lowercase)
#ERROR1repository 이름이 소문자여야 한다는 에러입니다. 제가 폴더 명을 "Docker"로 해놨었더니 이런 오류가 뜨더라고요. 폴더명을 "docker"로 바꿨더니 해결되었습니다.kim-yaegun@gim-yegeons-MacBook-Air Docker % docker run -p 5001:8080 -v /usr/src/app/node_modules -v $(pwd):/usr/src/app yaegun/nodedocker: invalid reference format: repository name (Docker) must be lowercase.See 'docker run --help'.#ERROR2레퍼런스가 유효하지 않다는 에러입니다.kim-yaegun@gim-yegeons-MacBook-Air docker % docker run -p 5001:8000 -v /usr/src/app/node_modules -v $(pwd):/usr/src/app yaegunkim/nodedocker: invalid reference format.See 'docker run --help'.이건 $(pwd)를"$(pwd)"로 바꾸어 주니 해결되었습니다.kim-yaegun@gim-yegeons-MacBook-Air docker % docker run -p 5001:8000 -v /usr/src/app/node_modules -v "$(pwd)":/usr/src/app yaegunkim/nodeSuccessful
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
[섹션3 - 내가 만든 이미지 기억하기 쉬운 이름 주기] 네이밍/태그 에러
"docker build -t YaegunKim/hello:latest ./"로 빌드를 잘 한 것 같은데 아래와 같은 에러가 나오더라고요.#COMMANDdocker run -it YaegunKim/hello#ERRORUnable to find image 'YaegunKim/hello:latest' locallydocker: Error response from daemon: Get "https://YaegunKim/v2/": dialing YaegunKim:443 container via direct connection because has no HTTPS proxy: resolving host YaegunKim: lookup YaegunKim: no such host.See 'docker run --help'.근데 또 아이디로 run을 하면 잘 되고...#PROBLEM-SOLVING이유는 버전은 "latest"가 아닌 "lastest"로 해서 에러가 났던 것이었습니다. 다시 빌드 하고 실행해보니 hello가 잘 출력되네요 ㅎㅎ
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
axios오류 문의드립니다!
프론트엔드 폴더에서 npm run start하면 바로 저 에러가 발생하고 소스 컨트롤 +S (저장)버튼 한번 누르면 되돌아옵니다.install axios 을 통해 package.json에 정상적으로 들어가 있는것도 확인했습니다.. 인풋값에 값 입력 후 전송 해도 동일한 에러가 발생하고axiox관련 404문제라 경로 및 오타도 확인해봤지만 문제가 없다고 생각하며 소스도 복사해서 가져온 상태입니다. 어떤곳을 확인을 해봐야될까요??ㅠㅠ
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
node.js version
안녕하세요. 5개월쯤 완강하고 실습 했을때는 문제가 없었는데,지금 다시 마지막 강의와 같이 배포하려고 하니 github action에서 Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.다음과 같은 에러가 납니다. 혹시 어떤 문제인지 알 수 있을까요?
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
안녕하세요 마지막 강의 질문 있습니다.
git actions에서 EB에 배포전에,docker hub에 이미지를 미리 배포하고,그 배포된 docker image 파일을 EB에서 실행한다고한다면,결국 Dockerrun.aws.json 파일만 EB에 배포하면 되는 것 아닌가요?- name: Generate deployment package run: zip -r deploy.zip . -x '*.git*'해당 코드는 소스파일과 그외 파일까지 전부 압축해서 S3에 업로드하자나요? Dockerr.aws.json 파일만 첨부해서는 작동이 안되나요?