일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- CentOS
- vpc peering
- github
- vm
- Clean Code
- snat
- Uptime Check
- interconnect
- ECR
- direnv
- IAM
- terraform
- Java
- pub/sub
- gcp
- IAP
- cloud
- 우테캠
- VAGRANT
- cloud function
- AWS
- MIG
- k8s
- pro
- Terraform Cloud
- docker
- kubernetes
- devops
- Python
- cicd
- Today
- Total
목록Docker (3)
EMD Blog
베이스 이미지로 python:3-slim 사용하고 있음. 해당 베이스 이미지 상에 패키지를 설치할 경우 mysql_config를 찾을 수 없다는 에러가 발생함. 이때 아래 두 패키지를 설치해주면 됨. apt install libmariadb-dev build-essential build-essential는 소프트웨어 컴파일에 필요한 패키지라고 함. https://linuxhint.com/install-build-essential-ubuntu/ 참고 : https://www.sysnet.pe.kr/2/0/12885?pageno=39
빌드 시간 단축하기 캐싱을 활용해 불필요한 빌드과정 제거 캐싱에는 순서가 중요 특정 스텝에서 변화가 발생하면 이후 스텝들은 새로 빌드됨 가장 변하지 않는 스텝을 상위로 자주 변하는 스텝은 하위로 구체적인 COPY COPY . 이런 식으로 하면 어떤 코드가 변경되더라도 새로 빌드됨 캐시할 수 있는 단위 구별 예를 들어 패키지 update와 install을 다른 캐시 단위로 묶으면 예전 버전의 패키지를 다운 받게 될수도 있음 이미지 크기 줄이기 작은 이미지는 배포가 빨라지고 공격 취약점이 작아짐 불필요한 의존성 제거 불필요한 의존성제거 & 디버깅 툴 제거 apt의 경우 no-install-recommends 커맨드로 추천 패키지 설치를 막을 수 있음 패키지 매니저 캐시 제거 패키지를 설치한 RUN 스텝 안에..
이전에 GCP Interconnect 구성 시 발생했던 이슈와 비슷한 이슈. 사무실 network 대역과 docker bridge 대역이 겹쳐서 사무실 네트워크가 연결이 안되는 문제 발생함. 간단하게 docker bridge 대역을 변경해서 해결. 근데 이 이슈는 Linux 계열의 OS에서만 발생하는 이슈로 Docker는 Linux 커널의 container 기술을 사용하기 때문에 MacOS와 Windows에서는 별도의 가상머신에서 Docker를 실행시킨다. 그렇기 때문에 docker bridge 대역이 host machine의 네트워크 인터페이스에 영향을 주지도, 받지도 않는다.