본문 바로가기

2020/07

(3)
외부에서 Docker 컨테이너로 명령어 날리는 방법 간혹 Docker를 사용하다보면, 컨테이너 내부에서 리눅스 명령어를 실행해야 하는 일이 있다. 이 때, 직접 Docker 컨테이너에 docker exec 명령어로 접속하여 명령어를 실행할 수도 있지만, 컨테이너 내부에 설치되어 있지 않은 라이브러리를 이용해야 할 수도 있고, 컨테이너로 직접 들어가는 작업이 번거로울 수 있다. 따라서 컨테이너를 띄우는 주체인 워커 노드에서 직접 Docker 컨테이너로 명령을 실행(주입) 시킬 수 있는 방법을 알아보자. 먼저 Docker 컨테이너의 ID가 필요하다. Docker 컨테이너의 ID는 아래와 같이 찾을 수 있다. $ sudo docker ps -a | grep {내가 찾으려는 컨테이너 명} # 예) $ sudo docker ps -a | grep nginx 41e..
SELinux에서 Nginx 사용시 proxy_pass 안될 때 해결법 SELinux 계열 OS를 사용하면서, Nginx를 프록시로 세팅해서 사용할 때 proxy_pass가 안될 수도 있다. 이에 대한 에러 코드는 /var/log/nginx/error.log를 확인해보면 자세하게 원인을 파악해 볼 수 있다. 2020/07/18 04:08:04 [crit] 312089#312089: *5 connect() to 127.0.0.1:8080 failed (13: Permission denied) while connecting to upstream, client: 123.123.123.12, server: localhost, request: "POST /hello HTTP/1.1", upstream: "http://127.0.0.1:8080/hello", host: "test.he..
AWS에서 사용하고 있는 IP CIDR 확인하는 법 json 파일로 확인 : linux shell에서 명령어로 확인 : $ curl https://ip-ranges.amazonaws.com/ip-ranges.json | jq -r '.prefixes[] | select(.region=="ap-northeast-2") | select(.service=="AMAZON") | .ip_prefix' json 파싱을 위해서 jq 라이브러리가 필요함. → jq 라이브러리가 없다면 아래 명령어로 설치 $ sudo yum install jq 혹은 $ sudo apt-get install jq 참고 AWS IP address ranges [1] AWS IP address ranges notifications - https://docs.aws.amazon.com/gener..