mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-22 12:54:53 -05:00
Able to set SSH port when install, update Docker docs
This commit is contained in:
parent
1453e91f41
commit
bd1d7d1509
8 changed files with 50 additions and 31 deletions
|
@ -76,6 +76,8 @@ run_user = Run User
|
||||||
run_user_helper = The user must have access to Repository Root Path and run Gogs.
|
run_user_helper = The user must have access to Repository Root Path and run Gogs.
|
||||||
domain = Domain
|
domain = Domain
|
||||||
domain_helper = This affects SSH clone URLs.
|
domain_helper = This affects SSH clone URLs.
|
||||||
|
ssh_port = SSH Port
|
||||||
|
ssh_port_helper = Port number which your SSH server is using, leave it empty to disable SSH feature.
|
||||||
http_port = HTTP Port
|
http_port = HTTP Port
|
||||||
http_port_helper = Port number which application will listen on.
|
http_port_helper = Port number which application will listen on.
|
||||||
app_url = Application URL
|
app_url = Application URL
|
||||||
|
|
|
@ -35,21 +35,19 @@ Directory `/var/gogs` keeps Git repoistories and Gogs data:
|
||||||
|-- log
|
|-- log
|
||||||
|-- templates
|
|-- templates
|
||||||
|
|
||||||
## SSH Support
|
## Settings
|
||||||
|
|
||||||
In order to support SSH, You need to change `SSH_PORT` in `/var/gogs/gogs/conf/app.ini`:
|
Most of settings are obvious and easy to understand, but there are some settings can be confusing by running Gogs inside Docker:
|
||||||
|
|
||||||
```
|
- Repository Root Path: keep it as default value `/home/git/gogs-repositories` because `start.sh` already made a symbolic link for you.
|
||||||
[server]
|
- Run User: keep it as default value `git` because `start.sh` already setup a user with name `git`.
|
||||||
SSH_PORT = 10022
|
- Domain: fill in with Docker container IP(e.g. `192.168.99.100`).
|
||||||
```
|
- SSH Port: Use the exposed port from Docker container. For example, your SSH server listens on `22` inside Docker, but you expose it by `10022:22`, then use `10022` for this value.
|
||||||
|
- HTTP Port: Use the exposed port from Docker container. For example, your Gogs listens on `3000` inside Docker, but you expose it by `10080:3000`, then use `10080` for this value.
|
||||||
|
- Application URL: Use combination of **Domain** and **HTTP Port** values(e.g. `http://192.168.99.100:10080/`).
|
||||||
|
|
||||||
Full documentation of settings can be found [here](http://gogs.io/docs/advanced/configuration_cheat_sheet.html).
|
Full documentation of settings can be found [here](http://gogs.io/docs/advanced/configuration_cheat_sheet.html).
|
||||||
|
|
||||||
## Todo
|
|
||||||
|
|
||||||
Install page need support set `SSH_PORT`.
|
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
|
||||||
If you see the following error:
|
If you see the following error:
|
||||||
|
|
|
@ -24,6 +24,7 @@ type InstallForm struct {
|
||||||
RepoRootPath string `binding:"Required"`
|
RepoRootPath string `binding:"Required"`
|
||||||
RunUser string `binding:"Required"`
|
RunUser string `binding:"Required"`
|
||||||
Domain string `binding:"Required"`
|
Domain string `binding:"Required"`
|
||||||
|
SSHPort int
|
||||||
HTTPPort string `binding:"Required"`
|
HTTPPort string `binding:"Required"`
|
||||||
AppUrl string `binding:"Required"`
|
AppUrl string `binding:"Required"`
|
||||||
|
|
||||||
|
|
File diff suppressed because one or more lines are too long
2
public/css/gogs.min.css
vendored
2
public/css/gogs.min.css
vendored
File diff suppressed because one or more lines are too long
|
@ -2,9 +2,10 @@
|
||||||
padding-top: 45px;
|
padding-top: 45px;
|
||||||
padding-bottom: @footer-margin * 3;
|
padding-bottom: @footer-margin * 3;
|
||||||
form {
|
form {
|
||||||
|
@input-padding: 320px !important;
|
||||||
label {
|
label {
|
||||||
text-align: right;
|
text-align: right;
|
||||||
width: 40% !important;
|
width: @input-padding;
|
||||||
}
|
}
|
||||||
input {
|
input {
|
||||||
width: 35% !important;
|
width: 35% !important;
|
||||||
|
@ -12,7 +13,7 @@
|
||||||
.field {
|
.field {
|
||||||
text-align: left;
|
text-align: left;
|
||||||
.help {
|
.help {
|
||||||
margin-left: 41%;
|
margin-left: @input-padding+15px;
|
||||||
}
|
}
|
||||||
&.optional .title {
|
&.optional .title {
|
||||||
margin-left: 38%;
|
margin-left: 38%;
|
||||||
|
|
|
@ -118,6 +118,7 @@ func Install(ctx *middleware.Context) {
|
||||||
}
|
}
|
||||||
|
|
||||||
form.Domain = setting.Domain
|
form.Domain = setting.Domain
|
||||||
|
form.SSHPort = setting.SSHPort
|
||||||
form.HTTPPort = setting.HttpPort
|
form.HTTPPort = setting.HttpPort
|
||||||
form.AppUrl = setting.AppUrl
|
form.AppUrl = setting.AppUrl
|
||||||
|
|
||||||
|
@ -241,6 +242,13 @@ func InstallPost(ctx *middleware.Context, form auth.InstallForm) {
|
||||||
cfg.Section("server").Key("HTTP_PORT").SetValue(form.HTTPPort)
|
cfg.Section("server").Key("HTTP_PORT").SetValue(form.HTTPPort)
|
||||||
cfg.Section("server").Key("ROOT_URL").SetValue(form.AppUrl)
|
cfg.Section("server").Key("ROOT_URL").SetValue(form.AppUrl)
|
||||||
|
|
||||||
|
if form.SSHPort == 0 {
|
||||||
|
cfg.Section("server").Key("DISABLE_SSH").SetValue("true")
|
||||||
|
} else {
|
||||||
|
cfg.Section("server").Key("DISABLE_SSH").SetValue("false")
|
||||||
|
cfg.Section("server").Key("SSH_PORT").SetValue(com.ToStr(form.SSHPort))
|
||||||
|
}
|
||||||
|
|
||||||
if len(strings.TrimSpace(form.SMTPHost)) > 0 {
|
if len(strings.TrimSpace(form.SMTPHost)) > 0 {
|
||||||
cfg.Section("mailer").Key("ENABLED").SetValue("true")
|
cfg.Section("mailer").Key("ENABLED").SetValue("true")
|
||||||
cfg.Section("mailer").Key("HOST").SetValue(form.SMTPHost)
|
cfg.Section("mailer").Key("HOST").SetValue(form.SMTPHost)
|
||||||
|
|
|
@ -92,6 +92,11 @@
|
||||||
<input id="domain" name="domain" value="{{.domain}}" required>
|
<input id="domain" name="domain" value="{{.domain}}" required>
|
||||||
<span class="help">{{.i18n.Tr "install.domain_helper"}}</span>
|
<span class="help">{{.i18n.Tr "install.domain_helper"}}</span>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="inline required field">
|
||||||
|
<label for="ssh_port">{{.i18n.Tr "install.ssh_port"}}</label>
|
||||||
|
<input id="ssh_port" name="ssh_port" value="{{.ssh_port}}">
|
||||||
|
<span class="help">{{.i18n.Tr "install.ssh_port_helper"}}</span>
|
||||||
|
</div>
|
||||||
<div class="inline required field">
|
<div class="inline required field">
|
||||||
<label for="http_port">{{.i18n.Tr "install.http_port"}}</label>
|
<label for="http_port">{{.i18n.Tr "install.http_port"}}</label>
|
||||||
<input id="http_port" name="http_port" value="{{.http_port}}" required>
|
<input id="http_port" name="http_port" value="{{.http_port}}" required>
|
||||||
|
@ -105,6 +110,8 @@
|
||||||
|
|
||||||
<!-- Optional Settings -->
|
<!-- Optional Settings -->
|
||||||
<h4 class="ui dividing header">{{.i18n.Tr "install.optional_title"}}</h4>
|
<h4 class="ui dividing header">{{.i18n.Tr "install.optional_title"}}</h4>
|
||||||
|
|
||||||
|
<!-- Email -->
|
||||||
<div class="ui accordion optional field">
|
<div class="ui accordion optional field">
|
||||||
<div class="title {{if .Err_SMTP}}text red{{end}}">
|
<div class="title {{if .Err_SMTP}}text red{{end}}">
|
||||||
<i class="icon dropdown"></i>
|
<i class="icon dropdown"></i>
|
||||||
|
@ -143,6 +150,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- Server and other services -->
|
||||||
<div class="ui accordion optional field">
|
<div class="ui accordion optional field">
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<i class="icon dropdown"></i>
|
<i class="icon dropdown"></i>
|
||||||
|
@ -170,6 +178,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- Admin -->
|
||||||
<div class="ui accordion optional field">
|
<div class="ui accordion optional field">
|
||||||
<div class="title {{if .Err_Admin}}text red{{end}}">
|
<div class="title {{if .Err_Admin}}text red{{end}}">
|
||||||
<i class="icon dropdown"></i>
|
<i class="icon dropdown"></i>
|
||||||
|
|
Loading…
Reference in a new issue