Documentation about the docker container CLI parameters

Hello friends,

I’m using duplicati with the (i hope) official docker image from Docker Hub

And I’m using with macvlan, which means that instead of using port redirection the ports are exposed in the network i’ve selected.

My problem is that in order to change the default port (8200) i need to pass the --webservice-port argument accourdinly with the documentation at Other Command Line Utilities - Duplicati 2 User's Manual. Something that is unfortunatelly not documented.

Since there are some parameters that you cannot apply using the webinterface, only the CLI and there is a official docker container I think it should exists somewhere information about how to apply those CLI parameters under docker.

Actually, it should be enought to provide a link to the Dockerfile for the project on the dockerhub home page, is enough to start finding the right information.

For those with similar issues i’ve solved by running a docker inspect on duplicati/duplicati, grabbing the command ran on Cmd and replace with my parameters using my docker compose. Something similar to this:

command: [ "/usr/bin/duplicati-server", "--webservice-port=8080", "--webservice-interface=any" ]

But I don’t know if this is the right way to do it and I don’t think inspecting the docker image to find the information is a good solution since it may very well break something else.

Hello and welcome!

Since you are using Docker, you probably don’t need to change the port Duplicati uses inside the container. Instead you can just adjust the port mapping between the host and the container in your docker compose. This way you can use whatever port you want on the host and have it map to 8200 inside the container.

See docker documentation for more info:

Hello, thanks for the reply.

I’m using docker but since i’m running http containers under macvlan: Use macvlan networks | Docker Documentation i cannot map port. Each container has its own IP and “all” ports are exposed at that IP.

I do that because I have four or five containers with conflicting port / service and some of them don’t accept a reverse proxy, they expect to be the only serving HTTP at 80 for instance or like to run at network host which proxies dont like much. Macvlan allows the container act like its has its own nic so have the advantage of allowing several HTTP / HTTPS containers running at 80 without a proxy and all my services are happy (it has some problems as stated on the doc, but i would have those problems with any other solution anyway) :stuck_out_tongue:

I could add a reverse proxy with a internal network but thats just adding another software on top of duplicati. Most applications allow changing the port trough the web UI but I don’t think Duplicati allows that, i cound’t find it.

Purely curiosity - particularly in view of you using macvlan to avoid port conflicts, why do you need/want to change the default port from 8200?

Hello,

No problem. Being completely honest I just don’t want to start mixing methods. I could run a proxy for half my services (like duplicati which work fine with reverse proxies) and the other half running over macvlan. But it doesn’t look like a elegant solution and I see maintainance issues in the future so i’ve decided to leave all services that talk over HTTP/HTTPS under macvlan with its own dedicated IP.

The simple truth is that I wanna run duplicati at port 80 (or better 443 with HTTPS) so I can add a DNS nameserver and resolve it directly without specifiyng a port. Its important to note that all of that is on a internal firewalled network, not internet. I was thinking about building a stack for duplicati with a proxy at the front (that proxy on macvlan), but it adds unecessary complexity.

Honestly the correct way to handle those situations is to run a reverse proxy and let that proxy handle redirection, but that does’t fly with services like syncthing, omada and lancache for example, so Im stuck with an alternative like macvlan for those services.