https://github.com/night-crawler/devpi-docker
Ready to use devpi image
https://github.com/night-crawler/devpi-docker
devpi devpi-client devpi-server docker docker-compose pypi
Last synced: 28 days ago
JSON representation
Ready to use devpi image
- Host: GitHub
- URL: https://github.com/night-crawler/devpi-docker
- Owner: night-crawler
- Created: 2018-01-02T18:29:55.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-01-02T21:52:25.000Z (over 8 years ago)
- Last Synced: 2025-02-22T20:46:50.741Z (over 1 year ago)
- Topics: devpi, devpi-client, devpi-server, docker, docker-compose, pypi
- Language: Shell
- Homepage:
- Size: 3.91 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
### INSTALLATION
1. Install latest `docker-ce` (17.12.0-ce) and `docker-compose` (1.18.0)
2. Setup [nginx-proxy](https://github.com/jwilder/nginx-proxy), or [docker-compose-letsencrypt-nginx-proxy-companion](https://github.com/evertramos/docker-compose-letsencrypt-nginx-proxy-companion)
3. Ensure `nginx-network` exists and used by nginx-proxy:
- `docker network create --attachable --driver overlay --subnet 10.10.10.10/24 nginx-network`
4. Clone:
- `git clone https://github.com/night-crawler/devpi-docker/`
- `cd devpi-docker`
5. Tune environment: `cp .env.sample .env`
6. `docker-compose up`
7. Add `devpi.test` (or whatever) to `/etc/hosts`
### USAGE
#### Update `~/.pip/pip.conf`
```ini
[global]
index-url = http://devpi.test/root/pypi/+simple/
[search]
index = http://devpi.test/root/pypi/
[install]
trusted-host=devpi.test
```
#### Update `~/.pydistutils.cfg `
```ini
[easy_install]
index_url = http://devpi.test/root/pypi/+simple/
```
```bash
# install devpi client
pip install devpi-client
# set devpi server
devpi use http://devpi.test
# login
devpi login root
# enter password from .env file
# set your email
devpi user -m root email=lilo.panic@gmail.com
# change password
devpi user -m root password=ChangeMePlease
# add `dev` index of main pypi
devpi index -c dev bases=root/pypi
# use index
devpi use root/dev
# install package
devpi install pytest
# or
pip install django
```
#### Usage with SSL
Let's assume volumes of `docker-compose-letsencrypt-nginx-proxy-companion` are mounted to
`./data`:
```bash
pwd
# /docker/docker-compose-letsencrypt-nginx-proxy-companion]
ls ./data
# certs conf.d html htpasswd vhost.d
```
Put into `./data/vhost.d/devpi.test_location`:
```ini
proxy_set_header X-outside-url $scheme://$host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
```
#### Usage with Basic HTTP Auth
In mounted data volume create `htpasswd/$VIRTUAL_HOST`:
```bash
cd /docker/docker-compose-letsencrypt-nginx-proxy-companion/data/htpasswd/
htpasswd -nbs user ChangeMePass >> devpi.test
```
Change links in your `~/.pip/pip.conf` according to scheme
`http://username:password@server/whatever/`:
```ini
[global]
index-url = https://user:ChangeMePass@devpi.test/root/pypi/+simple/
[search]
index = https://user:ChangeMePass@devpi.test/root/pypi/
```