48 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# sneak/ubuntumirror
 | 
						|
 | 
						|
Docker container for syncing trusty and xenial ubuntu LTS mirrors
 | 
						|
to reduce network traffic and speed up build times.
 | 
						|
 | 
						|
I recommend deploying this with a `--dns 172.17.0.1` in your
 | 
						|
`/etc/default/docker` and dnsmasq bound to 172.17.0.1:53 to rewrite
 | 
						|
`archive.ubuntu.com` to `172.17.0.1` (which this image will be listening and
 | 
						|
serving on).
 | 
						|
 | 
						|
Then even your builds (where you can't specify links) will go fast.
 | 
						|
 | 
						|
# Levers
 | 
						|
 | 
						|
* `MIRROR_ARCHITECTURES`
 | 
						|
    * default `amd64`. 
 | 
						|
    * You may want `i386,amd64`.
 | 
						|
* `MIRROR_CATEGORIES`
 | 
						|
    * default `main,universe`.
 | 
						|
    * You may want `main,universe,restricted,multiverse`. Will use lots of
 | 
						|
      disk.
 | 
						|
* `UBUNTU_MIRROR_PROJECTS`
 | 
						|
    * default `xenial,xenial-updates,xenial-security,xenial-backports,bionic,bionic-updates,bionic-security,bionic-backports`.
 | 
						|
* `UBUNTU_MIRROR_SOURCE`
 | 
						|
    * default `archive.ubuntu.com`.
 | 
						|
    * You may want `xx.archive.ubuntu.com` (where `xx` is your country
 | 
						|
      code).
 | 
						|
* `MIRROR_INTERVAL_SECONDS` - mirror sync interval
 | 
						|
    * default `43200` (12h)
 | 
						|
    * You may want `10800` (3h)
 | 
						|
 | 
						|
# Example dnsmasq setup
 | 
						|
 | 
						|
```
 | 
						|
apt-get update && apt-get -y install dnsmasq
 | 
						|
cat > /etc/dnsmasq.d/docker <<EOF
 | 
						|
no-resolv
 | 
						|
server=8.8.8.8
 | 
						|
server=8.8.4.4
 | 
						|
EOF
 | 
						|
echo "172.17.0.1 archive.ubuntu.com" >> /etc/hosts
 | 
						|
service dnsmasq restart
 | 
						|
```
 | 
						|
 | 
						|
Then, just add `--dns 172.17.0.1` to your /etc/default/docker opts
 | 
						|
and bounce the docker daemon.  Future containers will talk to your local
 | 
						|
mirror.
 |