Skip to content

Commit da6e50d

Browse files
authored
Merge pull request #25 from mageddo/feature/MG-362
MG-362 option to enable/disable web server publish port
2 parents ed32526 + b440062 commit da6e50d

File tree

3 files changed

+19
-6
lines changed

3 files changed

+19
-6
lines changed

src/github.com/mageddo/dns-proxy-server/flags/flags.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ var (
1919
docker = start as docker service,
2020
normal = start as normal service,
2121
uninstall = uninstall the service from machine `)
22+
publishServicePort = flag.Bool("service-publish-web-port", true, "Publish web port when running as service in docker mode")
2223
Version = flag.Bool("version", false, "Current version")
2324
Help = flag.Bool("help", false, "This message")
2425
)
@@ -36,6 +37,10 @@ func init(){
3637

3738
}
3839

40+
func PublishServicePort() bool {
41+
return *publishServicePort
42+
}
43+
3944
func GetRawCurrentVersion() string {
4045

4146
//if len(version) == 0 {

src/github.com/mageddo/dns-proxy-server/service/docker.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,21 @@ func NewDockerScript() *Script {
1111

1212
script := `'PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ; ` +
1313
`docker rm -f dns-proxy-server &> /dev/null ;` +
14-
`docker run --hostname dns.mageddo --name dns-proxy-server -p %d:%d ` +
14+
`docker run --hostname dns.mageddo --name dns-proxy-server %s ` +
1515
`-v /opt/dns-proxy-server/conf:/app/conf ` +
1616
`-v /var/run/docker.sock:/var/run/docker.sock ` +
1717
`-v /etc/resolv.conf:/etc/resolv.conf ` +
1818
`defreitas/dns-proxy-server:%s'`
1919
script = strings.Replace(script, "/", "\\/", -1)
2020
script = strings.Replace(script, "&", "\\&", -1)
21-
script = fmt.Sprintf(script, conf.WebServerPort(), conf.WebServerPort(), flags.GetRawCurrentVersion())
21+
script = fmt.Sprintf(script, getExposedPort(), flags.GetRawCurrentVersion())
2222
return &Script{script}
23+
}
24+
25+
func getExposedPort() string {
26+
if flags.PublishServicePort() {
27+
return fmt.Sprintf("-p %d:%d", conf.WebServerPort(), conf.WebServerPort())
28+
} else {
29+
return ""
30+
}
2331
}

src/github.com/mageddo/dns-proxy-server/service/service.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,13 @@ func NewService(ctx context.Context) *Service {
3030

3131
func (sc *Service) Install() {
3232

33-
setupServiceFlag := *flags.SetupService
34-
if len(setupServiceFlag) == 0 {
33+
serviceMode := *flags.SetupService
34+
if len(serviceMode) == 0 {
3535
return
3636
}
37-
sc.logger.Infof("setupservice=%s, version=%s", setupServiceFlag, flags.GetRawCurrentVersion())
37+
sc.logger.Infof("mode=%s, version=%s", serviceMode, flags.GetRawCurrentVersion())
3838
var err error
39-
switch setupServiceFlag {
39+
switch serviceMode {
4040
case "docker":
4141
err = sc.SetupFor(DNS_PROXY_SERVER_PATH, DNS_PROXY_SERVER_SERVICE, NewDockerScript())
4242
case "normal":

0 commit comments

Comments
 (0)