일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Python
- MySQL
- 개인공부
- Spring
- 내일배움캠프
- 중심사회
- 스파르타내일배움캠프WIL
- AWS
- 프로그래머스
- 스파르타코딩클럽
- 컴퓨터개론
- Flutter
- til
- 부트캠프
- 항해
- 99클럽
- 스파르타내일배움캠프
- 개발자블로그
- 스파르타내일배움캠프TIL
- 개발자스터디
- 컴퓨터구조론 5판
- wil
- 자바
- 소프트웨어
- 코딩테스트
- 99일지
- 국비
- 운영체제
- 백준
- java
- Today
- Total
목록🐳 Docker (9)
컴공생의 발자취
Keyworddockerdockerfilecompose(app, db, nginx)nginx(react deploy)nginx(reverse proxy) Dockerfile 만들기 프로젝트 디렉토리 구조: 프로젝트의 루트 디렉토리에 위치 today-space-front/├── package-lock.json├── package.json├── public├── src/│ └── main/│ ├── component│ ├── pages│ └── redux└── Dockerfile Dockerfile 만들기: 검색 keyword → react Dockerfile # 1. Node.js 환경에서 빌드 수행FROM node:14 AS buildWORKDIR /app# pack..
KeywordGithub release & tagdocker tag 버전 관리를 하는 이유 코드의 백업 및 복구: 버전 관리를 통해 코드의 모든 변경 이력을 저장하고, 필요시 특정 시점으로 쉽게 되돌아갈 수 있습니다. 이는 문제가 발생했을 때 빠른 복구를 가능하게 합니다.변경 이력 추적: 각 커밋마다 어떤 변경이 있었는지 기록되므로, 코드의 진화를 추적할 수 있습니다. 이를 통해 문제의 원인을 파악하고 수정하는 데 도움이 됩니다.협업 및 병합 관리: 팀 내 여러 개발자가 동시에 작업할 때, 각자의 작업 내용을 체계적으로 관리하고 병합할 수 있습니다. 깃에서 태그된 커밋이 특정 브랜치에 푸시 또는 머지될 때, 해당 버전을 명확하게 관리하여 프로젝트의 안정성과 품질을 유지할 수 있습니다. 추가로 고민해보면..
Keyword1. DooD2. docker network Flow1. 새로운 EC2 인스턴스 생성 -> 젠킨스만2. docker 설치3. docker 컨테이너 젠킨스 실행4. 서브 도메인 세팅5. 젠킨스 Webhook 연결6. 파이프라인 작성 후 배포 확인 EC2 인스턴스 설정 EC2 인스턴스 설정용량: 최소 100GBEC2 인스턴스 생성:AWS 콘솔에 로그인하고 EC2 서비스를 선택합니다."인스턴스 시작" 버튼을 클릭하여 새로운 인스턴스를 생성합니다.Ubuntu AMI를 선택합니다.인스턴스 유형을 선택합니다 (t2.micro는 무료 티어로 사용할 수 있습니다). → t2.medium.키 페어를 설정하고 다운로드합니다.인스턴스를 시작합니다.보안 그룹 설정:SSH (포트 22), HTTP (포트 80)..
Keyword1. docker-compose envfile env 파일을 나누는 이유는? 이전의 백엔드 배포 로컬의 인텔리제이에서 docker 이미지를 만들었기 때문에 properties-secrets.yml이 포함되어 이미지가 만들어졌다. 이렇게 되면 public 도커허브에 올려놓은 이미지를 받아서 환경변수를 볼 수 있다. 그럼 보안상 문제가 생긴다. 또한, 환경변수가 도커 이미지에 들어가 있다면 CI/CD에서 환경변수 변경 시 매번 도커 이미지를 다시 만들어서 EC2에서 도커 이미지를 받은 다음 실행시켜야 하는 번거로움이 존재한다. 그래서 추후 CI/CD를 위해서도 환경변수는 분리해 놓아야 관리가 편하기 때문에 env 파일로 분리할 것이다. .env 파일 생성 * 해당 과정은 EC2 인스턴스에서 ..
Keyworddockerdockerfilecompose(app, db)nginx(react deploy) -> 현재 적용되지 않은 사안nginx(reverse proxy) Docker 이란? 왜 사용할까? (장점)환경 일관성: 개발, 테스트, 프로덕션 환경에서 동일한 컨테이너 이미지를 사용하기 때문에 "내 로컬에서는 잘 돌아가는데..." 같은 문제가 발생하지 않습니다.이식성: 컨테이너는 운영체제에 독립적이기 때문에, 어디에서나 동일하게 동작합니다. AWS, GCP, Azure 등 어떤 클라우드 환경에서도 동일한 컨테이너를 실행할 수 있습니다.신속한 배포: 애플리케이션과 종속성을 하나의 패키지로 묶어 배포하기 때문에, 새로운 환경에서 빠르게 애플리케이션을 배포할 수 있습니다. 핵심 개념컨테이너: 소프트웨..
📌 문제 상황Jenkins 내부에 Docker CLI를 설치했으나, 다음과 같은 권한 문제로 인해 Docker 명령어 실행이 불가능했다.ERROR: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Head "http://%2Fvar%2Frun%2Fdocker.sock/_ping": dial unix /var/run/docker.sock: connect: permission denied 해당 문제는 Jenkins가 Docker 데몬에 접근할 수 있는 권한이 없어서 발생했다. 🤔 고민 및 시도한 내용 1. Jenkins 컨테이너 내부 접속먼저, Jenkins 컨테이너에 ..
2024.07.03.(수)💡 오늘의 학습 키워드- Docker 1주차 -Mac Docker 설치터미널 Docker 설치 warningDocker Desktop Error Mac Docker 설치https://brew.sh/ko커맨드 복사터미널에서 복사한 커맨드 실행설치 후 brew doctor 실행# 사전에 homebrew 설치 필수# docker for mac설치brew install docker docker-compose# docker version 확인docker --version# docker compose version 확인docker-compose --version Install Docker Desktop on MacInstall Docker for Mac to get started. Thi..
2024.07.02.(화) 💡 오늘의 학습 키워드- docker 1주차 -CI/CD란 무엇인가?Docker 사용 이유Window Docker 설치Container 실행 테스트Docker 이미지Docker Image와 Docker Container의 관계Docker Container 삭제 CI/CD란 무엇인가?: Continuous Integration/Continuous Deployment(Delivery)의 약자로, 지속적인 통합과 지속적인 제공을 의미 기본 개념지속적인 통합(Continuous Integration)지속적인 서비스 제공 (Continuous Delivery)지속적인 배포(Continuous Deployment)단계코드 작성: 개발자들은 소스 코드를 작성하고 저장소(repositor..
Docker 란? Docker란 컨테이너화된 애플리케이션을 만들고 관리하기 위한 오픈소스 가상화 플랫폼이다. Docker을 사용하면 애플리케이션과 모든 종속성을 이미지로 패키지화하여, 다른 환경에서도 동일한 실행 환경을 보장할 수 있다. 컨테이너란? 애플리케이션과 그 실행 환경을 포함하는 격리된 단위이다. 이 격리는 호스트 운영 체제 커널을 공유하지만 다른 프로세스와는 격리되어 있어, 애플리케이션 간의 간섭을 방지하고 환경을 일관성 있게 유지한다. 가상화란? 가상화는 하드웨어 리소스를 가상적으로 나누고, 각각의 가상 환경에서 독립적인 운영 체제와 애플리케이션을 실행할 수 있도록 하는 기술이다. 물리적 서버를 더 효울적으로 활용하고, 서버 운영과 관리를 간편하게 만들 수 있다. | 가상화 사용 이유는? 1..