https://docs.docker.com/installation/ubuntulinux/
Request:
ubuntu.dockerfile.squid.txt (link)
ubuntu.dockerfile.basic-proxy.txt (link)
ubuntu.dockerfile.digest-proxy.txt (link)
docker build -t ubuntu_squid -f ubuntu.dockerfile.squid.txt .
docker build -t ubuntu_squid_nologin -f ubuntu.dockerfile.nologin-proxy.txt .
docker build -t ubuntu_squid_basic -f ubuntu.dockerfile.basic-proxy.txt .
docker build -t ubuntu_squid_digest -f ubuntu.dockerfile.digest-proxy.txt .
docker run --name proxy_nologin -d -p 3128:3128 ubuntu_squid_nologin
docker run --name proxy_basic -d -p 3129:3128 ubuntu_squid_basic
docker run --name proxy_digest -d -p 3130:3128 ubuntu_squid_digest
curl --verbose -x http://localhost:3128 www.google.com.tw
curl --verbose -x root:admin@localhost:3129 www.google.com.tw
curl --verbose -x root:admin@localhost:3130 --proxy-digest www.google.com.tw
curl --verbose -x root:wrong@localhost:3129 www.google.com.tw
curl --verbose -x root:wrong@localhost:3130 --proxy-digest www.google.com.tw
docker ps -qa | awk '{ printf("docker logs %s\n",$1) }' | sh
or
docker logs -f proxy_nologin
docker logs -f proxy_basic
docker logs -f proxy_digest
docker kill `docker ps -qa`
docker rm `docker ps -qa`
docker rmi ubuntu_squid_nologin
docker rmi ubuntu_squid_basic
docker rmi ubuntu_squid_digest
docker rmi ubuntu_squid
1. HTTP Proxy without AuthenticationTest Account:
2. HTTP Proxy with Basic Authentication
3. HTTP Proxy with Digest Authentication
root:admin
hello:kitty
step 1. Install docker
sudo apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys
58118E89F3A912897C070ADBF76221572C52609D
sudo vi /etc/apt/sources.list.d/docker.list
deb https://apt.dockerproject.org/repo ubuntu-trusty main
sudo apt-get -y update
sudo apt-get purge lxc-docker*
sudo apt-cache policy docker-engine
sudo apt-get -y upgrade
sudo apt-get install -y docker-engine
sudo docker run hello-world
sudo usermod -aG docker ubuntu
docker run hello-world
step 2. Prepare dockerfile
ubuntu.dockerfile.squid.txt (link)
ubuntu.dockerfile.nologin-proxy.txt (link)
ubuntu.dockerfile.digest-proxy.txt (link)
step 3. docker build
docker build -t ubuntu_squid -f ubuntu.dockerfile.squid.txt .
docker build -t ubuntu_squid_nologin -f ubuntu.dockerfile.nologin-proxy.txt .
docker build -t ubuntu_squid_basic -f ubuntu.dockerfile.basic-proxy.txt .
docker build -t ubuntu_squid_digest -f ubuntu.dockerfile.digest-proxy.txt .
step 4. docker run
docker run --name proxy_nologin -d -p 3128:3128 ubuntu_squid_nologin
docker run --name proxy_basic -d -p 3129:3128 ubuntu_squid_basic
docker run --name proxy_digest -d -p 3130:3128 ubuntu_squid_digest
step 5. quick test
curl --verbose -x http://localhost:3128 www.google.com.tw
curl --verbose -x root:admin@localhost:3129 www.google.com.tw
curl --verbose -x root:admin@localhost:3130 --proxy-digest www.google.com.tw
curl --verbose -x root:wrong@localhost:3129 www.google.com.tw
curl --verbose -x root:wrong@localhost:3130 --proxy-digest www.google.com.tw
step 6. docker logs
docker ps -qa | awk '{ printf("docker logs %s\n",$1) }' | sh
or
docker logs -f proxy_nologin
docker logs -f proxy_basic
docker logs -f proxy_digest
step 7. stop
docker kill `docker ps -qa`
docker rm `docker ps -qa`
step 8. remove
docker rmi ubuntu_squid_nologin
docker rmi ubuntu_squid_basic
docker rmi ubuntu_squid_digest
docker rmi ubuntu_squid
dockerfile updated for UBuntu 16.04
回覆刪除https://github.com/vash-hsu/docker