- Dockerfile 80.6%
- Shell 19.4%
| agate | ||
| webroot | ||
| .gitignore | ||
| docker-compose.yml | ||
| LICENSE | ||
| README.md | ||
agate-docker
Example repository that shows how to set up agate (a gemini server) with Docker and docker compose.
For more information on agate, please see here.
For more information on gemini, check out Project Gemini.
A lot of info can be found in the agate repository but the goal here was to present a ready to use docker compose example.
Install
Set environment variables
Update the following environment variables in the docker-compose.yml file to match your desired values.
HOSTNAMELANG
Create the ./certificates directory
This directory will hold the certificates generated by agate (or by you, see below):
mkdir ./certificates
[optionally] generate keys and certificates and put them in ./certificates/{hostname}
Example (update the CN value and directory name):
$ openssl req -x509 -newkey rsa:4096 -keyout key.rsa -out cert.pem -days 3650 -nodes -subj "/CN=example.com"
$ openssl x509 -inform pem -in cert.pem -outform der -out cert.der
$ openssl rsa -inform pem -in key.rsa -outform der -out key.der
mkdir ./certificates/example.com
cp cert.der key.der ./certificates/example.com/
However, if you don't do this, agate will itself generate self-signed certificates, so feel free to ignore this step.
Start agate
docker compose up -d agate
Docker should build and start the agate container, which is then available at port 1965.
All files go in ./webroot/. That's all there is to it!