Updated README

- Fixed ARM instructions
- More collapsibles
- Added all-in-one docker-compose example from issue 21
This commit is contained in:
Quentin McGaw
2019-05-22 09:34:33 +02:00
parent 6c49bd3ffb
commit 56b333d06b

View File

@@ -54,13 +54,16 @@
- A Private Internet Access **username** and **password** - [Sign up](https://www.privateinternetaccess.com/pages/buy-vpn/) - A Private Internet Access **username** and **password** - [Sign up](https://www.privateinternetaccess.com/pages/buy-vpn/)
- [Docker](https://docs.docker.com/install/) installed on the host - [Docker](https://docs.docker.com/install/) installed on the host
- If you use a strict firewall on the host/router: - <details><summary>Click to show firewall requirements</summary><p>
- Allow outbound TCP 853 to 1.1.1.1 to allow Unbound to resolve the PIA domain name at start. You can then block it once the container is started. - Allow outbound TCP 853 to 1.1.1.1 to allow Unbound to resolve the PIA domain name at start. You can then block it once the container is started.
- For UDP strong encryption, allow outbound UDP 1197 - For UDP strong encryption, allow outbound UDP 1197
- For UDP normal encryption, allow outbound UDP 1198 - For UDP normal encryption, allow outbound UDP 1198
- For TCP strong encryption, allow outbound TCP 501 - For TCP strong encryption, allow outbound TCP 501
- For TCP normal encryption, allow outbound TCP 502 - For TCP normal encryption, allow outbound TCP 502
</p></details>
## Setup ## Setup
1. Make sure you have your `/dev/net/tun` device setup on your host with one of the following commands, depending on your OS: 1. Make sure you have your `/dev/net/tun` device setup on your host with one of the following commands, depending on your OS:
@@ -75,7 +78,33 @@
modprobe tun modprobe tun
``` ```
1. **IF YOU HAVE AN ARM DEVICE**, follow the steps in the [ARM devices section](#arm-devices) 1. <details><summary>CLICK IF YOU HAVE AN ARM DEVICE</summary><p>
- If you have a ARM 32 bit v6 architecture
```sh
docker build -t qmcgaw/ddns-updater \
--build-arg BASE_IMAGE=arm32v6/alpine \
https://github.com/qdm12/private-internet-access-docker.git
```
- If you have a ARM 32 bit v7 architecture
```sh
docker build -t qmcgaw/ddns-updater \
--build-arg BASE_IMAGE=arm32v7/alpine \
https://github.com/qdm12/private-internet-access-docker.git
```
- If you have a ARM 64 bit v8 architecture
```sh
docker build -t qmcgaw/ddns-updater \
--build-arg BASE_IMAGE=arm64v8/alpine \
https://github.com/qdm12/private-internet-access-docker.git
```
</p></details>
1. Launch the container with: 1. Launch the container with:
@@ -97,7 +126,7 @@
1. Wait about 5 seconds for it to connect to the PIA server. You can check with: 1. Wait about 5 seconds for it to connect to the PIA server. You can check with:
```bash ```bash
docker logs -f pia docker logs pia
``` ```
1. Follow the [**Testing section**](#testing) 1. Follow the [**Testing section**](#testing)
@@ -234,29 +263,34 @@ services:
#### All in one docker-compose #### All in one docker-compose
To be written, see [issue 21](https://github.com/qdm12/private-internet-access-docker/issues/21) According to [issue 21](https://github.com/qdm12/private-internet-access-docker/issues/21), this should do:
## ARM devices ```yml
version: '3'
- If your architecture is ARMHF (32 bit), run this on your ARM device: services:
pia:
```sh image: qmcgaw/private-internet-access
docker build -t qmcgaw/private-internet-access \ container_name: pia
--build-arg BASE_IMAGE=arm32v6/alpine \ cap_add:
https://github.com/qdm12/private-internet-access-docker.git - NET_ADMIN
``` devices:
- /dev/net/tun
- If your architecture is AARCH64 (64 bit), run this on your ARM device: environment:
- USER=
```sh - PASSWORD=
docker build -t qmcgaw/private-internet-access \ - REGION=
--build-arg BASE_IMAGE=arm64v8/alpine \ deluge:
https://github.com/qdm12/private-internet-access-docker.git image: linuxserver/deluge
``` container_name: deluge
network_mode: "service:pia"
depends_on:
- pia
# add more volumes etc.
```
## For the paranoids ## For the paranoids
- You can review the code which essential consits in the [Dockerfile](https://github.com/qdm12/private-internet-access-docker/blob/master/Dockerfile) and [entrypoint.sh](https://github.com/qdm12/private-internet-access-docker/blob/master/entrypoint.sh) - You can review the code which essential consists in the [Dockerfile](https://github.com/qdm12/private-internet-access-docker/blob/master/Dockerfile) and [entrypoint.sh](https://github.com/qdm12/private-internet-access-docker/blob/master/entrypoint.sh)
- Build the images yourself: - Build the images yourself:
```bash ```bash
@@ -271,8 +305,8 @@ To be written, see [issue 21](https://github.com/qdm12/private-internet-access-d
## TODOs ## TODOs
- [ ] SOCKS/HTTP proxy or VPN server for LAN devices to use the container - [ ] SOCKS/HTTP proxy or VPN server for LAN devices to use the container
- [ ] Nginx scratch
- [ ] Port forwarding - [ ] Port forwarding
- [ ] Nginx scratch
## License ## License