Ubuntu 포함 linux 기본 환경에서 apt 또는 apt-get 에 대한 proxy 설정방법이다.
Docker 환경에서 container 안에서 proxy를 설정해야할 경우에도 똑같이 적용하면 된다.
다만, docker container 안에서는 proxy가 안될 경우 vi 설치부터 애먹는 경우가 있는데 아래 간단한 팁을 적어 놓았다.
□ APT, APT-GET을 위한 Proxy 설정
1. configuration file 생성
파일이름은 상관없다. proxy.conf, 90proxy, 09proxy 등 다른 용도를 위해서 기존에 존재하는 파일명과 충돌하지 않으면 된다. 아래에서는 90proxy를 사용한다. 단지 앞에 숫자를 붙이면 정렬이 되어서 보기 좋기 때문이다.
$ sudo vi /etc/apt/apt.conf.d/90proxy
2. file에 proxy 정보 저장
Acquire::http::proxy "http://proxy.server:port/";
Acquire::https::proxy "http://proxy.server:port/";
사용예)
Acquire::http::proxy "http://127.0.0.1:8080/";
Acquire::https::proxy "http://127.0.0.1:8080/";
proxy server에 비밀번호가 있는 경우는 아래처럼 설정한다.
Acquire::http::proxy "http://user:password@proxy.server:port/";
Acquire::https::proxy "http://user:password@proxy.server:port/";
3. 호완되는 다른 형식
Acquire {
HTTP::proxy "http://proxy.server:port/";
HTTPS::proxy "http://proxy.server:port/";
}
또는
Acquire {
HTTP {
Proxy "http://proxy.server:port/";
};
HTTPS {
Proxy "http://proxy.server:port/";
};
}
□ VI가 안될 때 팁
누구나 아는 방법일 뿐이지만, 쉽게 copy & paste 하시길... 리다이렉트 옵션인 > 와 >> 가 중요하다.
$ export http_proxy="http://proxy.server:port"
$ export https_proxy="http://proxy.server:port"
$ touch /etc/apt/apt.conf.d/proxy.conf
$ echo "Acquire::http::Proxy \"http://proxy.server:port/\";" > /etc/apt/apt.conf.d/proxy.conf
$ echo "Acquire::https::Proxy \"https://proxy.server:port/\";" >> /etc/apt/apt.conf.d/proxy.conf
// 큰따옴표(") 대신 작은따옴표(')를 써도 됨. 이 경우 \ 를 안써도 되서 좀 더 편함
$ echo 'Acquire::http::Proxy "http://proxy.server:port/";' > /etc/apt/apt.conf.d/proxy.conf
$ echo 'Acquire::https::Proxy "https://proxy.server:port/;' >> /etc/apt/apt.conf.d/proxy.conf
확인은 cat 명령어 수행 시 Acquire... 가 나오면 성공
$ cat /etc/apt/apt.conf.d/proxy.conf
Acquire::http::Proxy "http://proxy.server:port/";
Acquire::https::Proxy "https://proxy.server:port/";
끝으로 apt-get update 등으로 proxy setting이 잘되었는지 확인해 보면 된다.