Forgejo
Forgejo is a community managed lightweight code hosting solution written in Go. It is published under the MIT license, and is a fork of Gitea.
Ports
Add an allocation on the node for each port.
- App 3000
- SSH 2020
Install
- Installer image
- ghcr.io/ptero-eggs/yolks:debian
- Install script
- 46 lines
Image
- Debian ghcr.io/ptero-eggs/yolks:debian
Startup
The Panel runs this command to start the server. It replaces each variable in the command with the value of that variable.
3 variables
Startup command
./forgejo web -p 3000 -c ./app.iniDotted values come from the server settings. These values are examples.
Disable the SSH feature when it’s not available.
DISABLE_SSHUsers can see
required|string|in:true,false
SSH port displayed in clone URL.
SSH_PORTUsers can see
required|integer|between:1024,65535
Use either `latest` or a specific version, such as `1.21.7-0`.
VERSIONUsers can edit
required|string|max:15
Wings
- Stop command
- ^C (SIGINT)
- Running when the console shows
- Listen:
Files Wings edits
Wings sets these values in these files before each start.
custom/app.ini file
- DISABLE_SSH
- DISABLE_SSH: {{server.build.env.DISABLE_SSH}}
- SSH_PORT
- SSH_PORT: {{server.build.env.SSH_PORT}}
Readme
Forgejo
Forgejo is a community managed lightweight code hosting solution written in Go. It is published under the MIT license.
Supported Versions
You can set the version in Version variable. You can use following values:
latest - latest stable release version - set the version according to this page: https://forgejo.org/releases/
Server Ports
Ports required to run the server in a table format.
| Port | default |
|---|---|
| App | 3000 |
| SSH | 2020 |
Changes
- fix docker images path
· Daniel Barton · 7d2b714
- Replace docker images
· Daniel Barton · 3759ed6
- Add software
· rowansc1 · 9b56a00
Problem with this egg?
Open an issue on GitHub. Include your Panel and Wings versions.
Install script 46 lines bash in ghcr.io/ptero-eggs/yolks:debian Show Hide
## Forgejo Installscript
## Modified version of the Gitea installscript, see https://github.com/parkervcp/eggs/blob/master/software/gitea/egg-gitea.json
## update system
apt update
apt -y install --no-install-recommends jq curl ca-certificates dnsutils
## Variables
ARCH=$([[ "$(uname -m)" == "x86_64" ]] && echo "amd64" || echo "arm64")
LATEST=$(dig +short release.forgejo.org TXT | grep -oE '([0-9]+\.){2}[0-9]+(-[a-zA-Z0-9]+)*')
cd /mnt/server
## install forgejo
if [ -z "${VERSION}" ] || [ "${VERSION}" == "latest" ]; then
echo -e "Downloading Forgejo $LATEST (latest)"
URL=https://codeberg.org/forgejo/forgejo/releases/download/v${LATEST}/forgejo-${LATEST}-linux-${ARCH}
else
echo -e "Downloading Forgejo $VERSION"
URL=https://codeberg.org/forgejo/forgejo/releases/download/v${VERSION}/forgejo-${VERSION}-linux-${ARCH}
fi
echo -e "Download URL: $URL"
curl -sSL -o forgejo $URL
chmod +x forgejo
mkdir -p custom
if [ -f "/mnt/server/custom/app.ini" ]; then
echo "Config file exists"
else
echo "[server]
LOCAL_ROOT_URL = http://${SERVER_IP}:${SERVER_PORT}/
DOMAIN = ${SERVER_IP}
HTTP_PORT = ${SERVER_PORT}
ROOT_URL = http://${SERVER_IP}:${SERVER_PORT}/
DISABLE_SSH = ${DISABLE_SSH}
SSH_PORT = ${SSH_PORT}" > /mnt/server/custom/app.ini
fi
echo -e "-------------------------------------------------"
echo -e "Installation completed"
echo -e "-------------------------------------------------"