|Jean-Philippe Roemer e63e0b3105 New approach to Gogs Docker Container||7 years ago|
|s6||7 years ago|
|README.md||7 years ago|
|build.sh||7 years ago|
|sshd_config||7 years ago|
|start.sh||7 years ago|
Visit Docker Hub see all available tags.
To keep your data out of Docker container, we do a volume(
/data) here, and you can change it based on your situation.
# Pull image from Docker Hub. $ docker pull gogs/gogs # Create local directory for volume. $ mkdir -p /var/gogs # Use `docker run` for the first time. $ docker run --name=gogs -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs # Use `docker start` if you have stopped it. $ docker start gogs
Files will be store in local path
/var/gogs in my case.
/var/gogs keeps Git repoistories and Gogs data:
/var/gogs |-- git | |-- gogs-repositories |-- ssh | |-- # ssh public/private keys for Gogs |-- gogs |-- conf |-- data |-- log |-- templates
Most of settings are obvious and easy to understand, but there are some settings can be confusing by running Gogs inside Docker:
start.shalready made a symbolic link for you.
start.shalready setup a user with name
192.168.99.100). But if you want to access your Gogs instance from a different physical machine, please fill in with the hostname or IP address of the Docker host machine.
22inside Docker, but you expose it by
10022:22, then use
10022for this value.
3000inside Docker, and you expose it by
10080:3000, but you still use
3000for this value.
Full documentation of settings can be found here.
:exclamation::exclamation::exclamation:Make sure you have volumed data to somewhere outside Docker container:exclamation::exclamation::exclamation:
Steps to upgrade Gogs with Docker:
docker pull gogs/gogs
docker stop gogs
docker rm gogs
If you see the following error:
checkVersion()] [E] Binary and template file version does not match
rm -fr /var/gogs/gogs/templates/ should fix this it. Just remember to backup templates file if you have made modifications youself.