본문 바로가기

Development Tools

(15)
[ Docker ] Docker 컨테이너 VSCode 연결 # 맥에서 도커 컨테이너 폴더와 연결할 폴더를 지정하여 준다# 로컬 폴더와 연결하지 않을 경우 생성하지 않아도 문제 없음mkdir -p ~/App/Ws/Docker/node# 노드 컨테이너 설치docker run -it -d -v ~/App/Ws/Docker/node:/app/ws/node --name node node:22# 노드 컨테이너 접속docker exec -it node /bin/bash# 로컬 폴더와 연결할 컨테이너 폴더 생성mkdir -p /app/ws/node
[ Docker ] Docker Volumes 관리 Docker Compose 파일의 경우 아래와 같은 구문들을 종종 발견할 수 있다.해당 구문에서 { driver: local } 는 도커가 관리하는 기본 시스템 경로에 데이터를 저장한다는 의미이다.volumes: mongodb_data: { driver: local }mongodb: image: docker.io/bitnami/mongodb:${MONGODB_VERSION:-5.0} restart: always volumes: - mongodb_data:/bitnami/mongodb 위와 같이 mongodb_data 에 저장을 한다고 하고 실행하였을 경우 해당 경로는docker compose 파일을 실행한 경로(e.g. /tmp) 명을 접두어로 붙인 폴더로 저장된다.Docker..
[ Docker ] Rocket.Chat 설치 Rocket.Chat 설치에 앞서 맥 사용자의 경우 Use Rosetta for x86_64/amd64 emulation on Apple silicon 를 체크해제 한다.이 옵션을 활성화하면 x86_64/amd64 아키텍처로 컴파일된 Docker 이미지를 실행할 때 Rosetta2를 사용하여 컨테이너를생성하는데 해당 아키텍처 생성에 버그가 있어 MongoDB 5.X 이상의 버전의 경우 실행되지 않고 버그가 발생한다. (MongoDB 를 설치 할 때 플랫폼을 aarch64 로 할 경우 문제가 없긴하다.)cd /tmp# Rocket.Cart Compose 파일 다운로드curl -L https://raw.githubusercontent.com/RocketChat/Docker.Official.Image/mas..
[ Docker ] Nexus 저장소 설치 # systemctl 사용을 위해 centos 8버전 설치(7버전의 경우 맥에서 실행시 D-Bus 오류 발생)# jdk 1.8 버전 설치 시 아키텍처 에러가 발생할 경우 platform 옵션을 통해 아키텍처를 지정해 줌# --platform linux/amd64# 설치하는 OS와 맡는 platform을 지정해 주어야 한다.# docker run --privileged --cap-add=SYS_TIME -d -p 8881:8881 --name nexus centos:8 initdocker run --privileged --cap-add=SYS_TIME --platform linux/arm64/v8 -d -p 8881:8881 --name nexus centos:8 initdocker exec -it nex..
[ Docker ] Nginx 헤더 취약점 방지 Nginx 화면에서 쿠키 사이즈가 클 경우 발생하는 에러 화면에서는 nginx 버전 정보등이 표시된다. nginx 버전 등을 이용한 취약점 공격이 가능하므로 서버 정보가 표시되지 않도록 해야한다.최근 웹사이트들의 쿠키 이용률이 급증하였기 때문에 웹사이트에 맞는 적절한 쿠키 헤더 사이즈를 설정 하고해당 오류 발생 시의 안내를 하여 주는 것이 중요하다.1. Nginx 환경 구축# nginx 1.14.0 버전 다운로드docker pull nginx:1.14.0# nginx 실행docker run --name nginx -d -p 8085:80 nginx:1.14.0 2. BurpSuit 또는 크롬 개발자 모드를 사용하여 쿠키 전송※ Nginx의 기본 최대 허용 헤더 사이즈는 8kb이다. 해당 사이즈를 초과하였..
[ BURPSUITE ] 인증서 설정 1. Windows2. Mac
[ Docker ] Jupyter Notebook 설치 1. Jupyter Notebook 설치docker run --user root --name jupyter -p 8888:8888 -p 9999:9999 -d jupyter/tensorflow-notebook# 해당 로그에서 token 값 확인 가능# http://localhost:8888 접속docker logs jupyter 2. Python2 코드 테스트 환경 추가 설치docker exec -it jupyter /bin/bashconda deactivateapt updateapt -y install python2 python2.7-devcurl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o /tmp/get-pip.pypython2 /tmp/get-pip.py..
[ Docker ] Docker Compose 작성 0. Docker Compose란? # 여러개의 컨테이너가 하나의 응용 프로그램으로 동작할 때 # 도커 컴포즈를 사용하면 두 개 이상의 컨테이너를 순서를 진행하여 한번에 실행할 수 있음 # 도커 컴포즈 내부 문법이 탭을 인식 못하므로 2개의 공백으로 하위 항목을 구분 # docker compose 내 모든 컨테이너 실행 docker-compose up # docker compose 내 모든 컨테이너 종료 docker-compose down # ================================================== # Docker Compose 파일은 아래와 같이 생성 # ================================================== # docker-comp..