Current Install

Is at: deploy.ese.lbl.gov:/usr/local/preseed $ sudo -s and then # su - esedeploy to restart containers or pull new version of the trunk branch.

Git Commands

IMPORTANT: Any edits should be made as yourself (i.e. not as esedeploy)

Post Install

```

Install SSH keys

mkdir /root/.ssh && \ wget -O /root/.ssh/authorized_keys http://deploy.ese.lbl.gov:8888/pubkeys && \ chmod -R go-rwx /root/.ssh ```

Useful Docker Commands

```

Shutdown the container(s), update the volumes after template changes (e.g. pubkey / config updates), and then restart the container(s)

docker ps && \ echo && \ docker-compose rm -sfv && \ docker volume rm preseed_staticvol preseed_webvol && \ docker-compose up --build -d && \ echo && \ docker ps ```

# Start/Stop Containers
docker-compose up
docker-compose down

# Build project
docker-compose up --build -d

# Tail log files
docker-compose logs -f

# Shutdown and remove containers
docker-compose rm -sfv

# List Volumes
docker volume ls

# Remove Volumes
docker volume rm preseed_staticvol preseed_webvol

# Inspect 
docker inspect --format=xxx

Build a Citrix VM

- Load Debian ISO
- Start VM
- At the Installer boot screen, Press esc on menu
- boot: auto url=deploy.ese.lbl.gov:8888/vm/FQDN of system you're building
- Disable DVD boot in XOA (optional? lately this has worked via the preseed directive)

Build on Bare-Metal or Proxmox

- Load Debian ISO
- Start system
- At the Installer boot screen, Press esc on menu
- boot: auto url=deploy.ese.lbl.gov:8888/hw/FQDN of system you're building

Authorized Keys

- http://deploy.ese.lbl.gov:8888/pubkeys
- ./app/project/templates/pubkeys

Troubleshooting:

- Error: Error creating socket: [Errno 8] nodename nor servname provided, or not known
- Fix: double-check your FQDN

- Error: Can't read Preseed File
- Fix: make sure the host is not already alive!

Tree

.
├── app
│   ├── Dockerfile
│   ├── project
│   │   ├── app.py
│   │   ├── static
│   │   │   └── favicon.ico
│   │   └── templates
│   │       ├── abort.html
│   │       ├── pubkeys
│   │       └── stretch
│   └── requirements.txt
├── docker-compose.yml
├── nginx
│   ├── Dockerfile
│   ├── nginx.conf
│   └── preseed.conf
├── README.md
└── TODO.md