[–] 1 point 7 months ago

If you’re using docker compose, it will create a default bridge network with a CIDR that could overlap with a real network routable to the host, which messes up network egress from the container.

If this is the case it’s useful to specify the bridge network CIDR in the compose file as something you don’t use.

  • source
  • [–] [S] 2 points 8 months ago

    I’m confused too. I’m not sure what it’s offering. But I have the container running now and can access it from the browser.

    I’m on macOS (will be migrating back to Linux in the future) and had to install something called Colima too, via brew, to allow docker itself to run. But it’s a service and once it’s started, it starts at login. So, I can forget about it and focus on docker. I’m very happy.

    My Pi3B is struggling to run the services I have on it so I couldn’t add another container there. Thanks again, I can finally organise information better and hopefully contribute to better online discourse hopefully!

  • source
  • parent
  • context
  • [–] 2 points 8 months ago (1 child)

    Yeh, I don't quite understand docker desktop.
    I guess it's handy for seeing running containers, volumes images etc.
    But I don't get what it offers over CLI, or a TUI like lazy-docker.

    You might be thinking of something like portainer, which does let you use compose files via its web gui.

    Glad you've figured out the docker compose route. I find config files (and scripts) significantly easier to work with than figuring out a bunch of commands to run.

  • source
  • parent
  • context
  • [–] [S] 2 points 8 months ago (2 children)

    Thanks. I'll go the docker-compose route after all. Familiarity might be better than whatever conveniences Docker Desktop offers. I really appreciate the help. I have a proper docker-compose.yml file now at least so I should be able to work from there.

  • source
  • parent
  • context
  • [–] 2 points 8 months ago (3 children)

    Yeh, it doesn't look like it's exposing the ports.
    I don't know docker desktop.
    I just use docker compose files, even for things that don't need it. I like having a file that describes the service, instead of deciphering run args.

    Some googling,
    https://stackoverflow.com/a/73819697
    Describes how to run a container with more specifics.

    I would strongly suggest you copy the official docker compose file, and run that with "docker compose up -d".
    That will configure all the components required, then you can still inspect/stop/start/view etc using docker desktop.

    But I also understand the brain fog.
    Maybe you could work through the fog to install Portainer once. After which, you can use that and it's web GUI to manage all your containers and compose files.
    Setup on Windows/WSL with Docker Desktop (but needs 2 commands: 1 to create the volume, 1 to run the container) https://docs.portainer.io/start/install-ce/server/docker/wsl

    Portainer might be more what you are looking for, rather than docker desktop (although docker desktop does make docker installation a lot easier)

  • source
  • parent
  • context
  • [–] [S] 1 point 8 months ago

    Thanks for the comment. I'm starting to think that the Docker Desktop app does not give access to (or does not use) a docker compose file. Here's what I can see I the inspector regarding compose and ports:

    "Labels": {
    			"org.opencontainers.image.created": "2025-10-07T08:17:19.987Z",
    			"org.opencontainers.image.description": "Official docker-composer for wallabag.",
    			"org.opencontainers.image.licenses": "",
    			"org.opencontainers.image.revision": "480d3833bc44c555b6ee76491635fef84ec7dd86",
    			"org.opencontainers.image.source": "https://github.com/wallabag/docker",
    			"org.opencontainers.image.title": "docker",
    			"org.opencontainers.image.url": "https://github.com/wallabag/docker",
    			"org.opencontainers.image.version": "2.6.14"
    		},
    		"StopTimeout": 1
    	},
    	"NetworkSettings": {
    		"SandboxID": "562d8d0e2db1adbfac83511f91282282644aca1213c73f3b045dafdd8b4e3ee9",
    		"SandboxKey": "/var/run/docker/netns/562d8d0e2db1",
    		"Ports": {
    			"80/tcp": null
    		},
    
  • source
  • parent
  • context
  • [–] [S] 2 points 8 months ago* (last edited 8 months ago) (4 children)

    Thanks for the response. Yes, the image I chose had buttons to Pull and Run the container. The official image had nothing. See these screen grabs for example: As opposed to the official one which has no buttons:

    There don't appear to be any ports specified, but I don't see an option to modify them. Usually I'd do that via the compose yaml file but I've been all over the UI and not notice a facility for that.

    Inspecting the container shows me this, but maybe I need to find a way to get/use the official image rather than pursue this one:

    {
    	"Id": "d254fde210636e232c2ec64d1b721bd943df7d22fd7e90841391c3178c73722e",
    	"Created": "2026-02-26T20:10:01.054503592Z",
    	"Path": "/entrypoint.sh",
    	"Args": [
    		"wallabag"
    	],
    	"State": {
    		"Status": "running",
    		"Running": true,
    		"Paused": false,
    		"Restarting": false,
    		"OOMKilled": false,
    		"Dead": false,
    		"Pid": 555,
    		"ExitCode": 0,
    		"Error": "",
    		"StartedAt": "2026-02-27T08:47:49.269760505Z",
    		"FinishedAt": "2026-02-26T20:24:20.523179421Z",
    		"Health": {
    			"Status": "starting",
    			"FailingStreak": 0,
    			"Log": [
    				{
    					"Start": "2026-02-26T20:17:03.274073218Z",
    					"End": "2026-02-26T20:17:03.38475801Z",
    					"ExitCode": 0,
    					"Output": "{\"appname\":\"wallabag\",\"version\":\"2.6.14\",\"allowed_registration\":false}"
    				},
    				{
    					"Start": "2026-02-26T20:17:33.385983677Z",
    					"End": "2026-02-26T20:17:33.497293427Z",
    					"ExitCode": 0,
    					"Output": "{\"appname\":\"wallabag\",\"version\":\"2.6.14\",\"allowed_registration\":false}"
    				},
    				{
    					"Start": "2026-02-26T20:18:03.49944726Z",
    					"End": "2026-02-26T20:18:03.607532885Z",
    					"ExitCode": 0,
    					"Output": "{\"appname\":\"wallabag\",\"version\":\"2.6.14\",\"allowed_registration\":false}"
    				},
    				{
    					"Start": "2026-02-26T20:18:33.612751302Z",
    					"End": "2026-02-26T20:18:33.718124719Z",
    					"ExitCode": 0,
    					"Output": "{\"appname\":\"wallabag\",\"version\":\"2.6.14\",\"allowed_registration\":false}"
    				},
    				{
    					"Start": "2026-02-26T20:23:51.821147421Z",
    					"End": "2026-02-26T20:23:52.395929172Z",
    					"ExitCode": 0,
    					"Output": "{\"appname\":\"wallabag\",\"version\":\"2.6.14\",\"allowed_registration\":false}"
    				}
    			]
    		}
    	},
    	"Image": "sha256:43746639f5f8abb4949394b69445f468e92c1c9430ef0986913d54e0f7994ff3",
    	"ResolvConfPath": "/var/lib/docker/containers/d254fde210636e232c2ec64d1b721bd943df7d22fd7e90841391c3178c73722e/resolv.conf",
    	"HostnamePath": "/var/lib/docker/containers/d254fde210636e232c2ec64d1b721bd943df7d22fd7e90841391c3178c73722e/hostname",
    	"HostsPath": "/var/lib/docker/containers/d254fde210636e232c2ec64d1b721bd943df7d22fd7e90841391c3178c73722e/hosts",
    	"LogPath": "/var/lib/docker/containers/d254fde210636e232c2ec64d1b721bd943df7d22fd7e90841391c3178c73722e/d254fde210636e232c2ec64d1b721bd943df7d22fd7e90841391c3178c73722e-json.log",
    	"Name": "/wallabag-container",
    	"RestartCount": 0,
    	"Driver": "overlay2",
    	"Platform": "linux",
    	"MountLabel": "",
    	"ProcessLabel": "",
    	"AppArmorProfile": "",
    	"ExecIDs": null,
    	"HostConfig": {
    		"Binds": [],
    		"ContainerIDFile": "",
    		"LogConfig": {
    			"Type": "json-file",
    			"Config": {}
    		},
    		"NetworkMode": "bridge",
    		"PortBindings": {},
    		"RestartPolicy": {
    			"Name": "no",
    			"MaximumRetryCount": 0
    		},
    		"AutoRemove": false,
    		"VolumeDriver": "",
    		"VolumesFrom": null,
    		"ConsoleSize": [
    			0,
    			0
    		],
    		"CapAdd": null,
    		"CapDrop": null,
    		"CgroupnsMode": "private",
    		"Dns": [],
    		"DnsOptions": [],
    		"DnsSearch": [],
    		"ExtraHosts": null,
    		"GroupAdd": null,
    		"IpcMode": "private",
    		"Cgroup": "",
    		"Links": null,
    		"OomScoreAdj": 0,
    		"PidMode": "",
    		"Privileged": false,
    		"PublishAllPorts": false,
    		"ReadonlyRootfs": false,
    		"SecurityOpt": null,
    		"UTSMode": "",
    		"UsernsMode": "",
    		"ShmSize": 67108864,
    		"Runtime": "runc",
    		"Isolation": "",
    		"CpuShares": 0,
    		"Memory": 0,
    		"NanoCpus": 0,
    		"CgroupParent": "",
    		"BlkioWeight": 0,
    		"BlkioWeightDevice": null,
    		"BlkioDeviceReadBps": null,
    		"BlkioDeviceWriteBps": null,
    		"BlkioDeviceReadIOps": null,
    		"BlkioDeviceWriteIOps": null,
    		"CpuPeriod": 0,
    		"CpuQuota": 0,
    		"CpuRealtimePeriod": 0,
    		"CpuRealtimeRuntime": 0,
    		"CpusetCpus": "",
    		"CpusetMems": "",
    		"Devices": null,
    		"DeviceCgroupRules": null,
    		"DeviceRequests": null,
    		"MemoryReservation": 0,
    		"MemorySwap": 0,
    		"MemorySwappiness": null,
    		"OomKillDisable": null,
    		"PidsLimit": null,
    		"Ulimits": null,
    		"CpuCount": 0,
    		"CpuPercent": 0,
    		"IOMaximumIOps": 0,
    		"IOMaximumBandwidth": 0,
    		"MaskedPaths": [
    			"/proc/acpi",
    			"/proc/asound",
    			"/proc/interrupts",
    			"/proc/kcore",
    			"/proc/keys",
    			"/proc/latency_stats",
    			"/proc/sched_debug",
    			"/proc/scsi",
    			"/proc/timer_list",
    			"/proc/timer_stats",
    			"/sys/devices/virtual/powercap",
    			"/sys/firmware"
    		],
    		"ReadonlyPaths": [
    			"/proc/bus",
    			"/proc/fs",
    			"/proc/irq",
    			"/proc/sys",
    			"/proc/sysrq-trigger"
    		]
    	},
    	"GraphDriver": {
    		"Data": {
    			"ID": "d254fde210636e232c2ec64d1b721bd943df7d22fd7e90841391c3178c73722e",
    			"LowerDir": "/var/lib/docker/overlay2/b2807d062c1d8403521606ce2f302e2c67dbc8f7a28c2fb28d6db3defb156f0f-init/diff:/var/lib/docker/overlay2/667dd92b968da5e7a955ea8e9498e04427ec5400c18f3b229be6de2a2d4b1c62/diff:/var/lib/docker/overlay2/962c36d2e4871f137c79266e99be449d2cd6aaf4c8cd276fc6a6f4307ebece67/diff:/var/lib/docker/overlay2/508c50d7273f68eda7c77483117c350ede656990d05de9038947eec12243e15a/diff:/var/lib/docker/overlay2/3f483498243fb6c1d6504e7a53dfbdeb57c283e86c6af23a1420cfbde73ef770/diff:/var/lib/docker/overlay2/080f18af9a70cfd9a0cd5d36dc59436f2ac59ad5c2cdcd4bb03b4c88855bd0ba/diff:/var/lib/docker/overlay2/b1220f35e2c0332a36d94a611e41fb1b049a677be61783b8b983c38909fe01ad/diff:/var/lib/docker/overlay2/c38a62224f9f95ae2e0d4434f9cc21b041a72e137d125a28ad4530a7a1fa9f16/diff",
    			"MergedDir": "/var/lib/docker/overlay2/b2807d062c1d8403521606ce2f302e2c67dbc8f7a28c2fb28d6db3defb156f0f/merged",
    			"UpperDir": "/var/lib/docker/overlay2/b2807d062c1d8403521606ce2f302e2c67dbc8f7a28c2fb28d6db3defb156f0f/diff",
    			"WorkDir": "/var/lib/docker/overlay2/b2807d062c1d8403521606ce2f302e2c67dbc8f7a28c2fb28d6db3defb156f0f/work"
    		},
    		"Name": "overlay2"
    	},
    	"Mounts": [],
    	"Config": {
    		"Hostname": "d254fde21063",
    		"Domainname": "",
    		"User": "",
    		"AttachStdin": false,
    		"AttachStdout": false,
    		"AttachStderr": false,
    		"ExposedPorts": {
    			"80/tcp": {}
    		},
    		"Tty": false,
    		"OpenStdin": false,
    		"StdinOnce": false,
    		"Env": [
    			"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/var/www/wallabag/bin"
    		],
    		"Cmd": [
    			"wallabag"
    		],
    		"Healthcheck": {
    			"Test": [
    				"CMD-SHELL",
    				"curl --fail --silent --show-error --user-agent healthcheck http://localhost/api/info || exit 1"
    			]
    		},
    		"Image": "doc75/wallabag:prev-prod",
    		"Volumes": null,
    		"WorkingDir": "/var/www/wallabag",
    		"Entrypoint": [
    			"/entrypoint.sh"
    		],
    		"Labels": {
    			"org.opencontainers.image.created": "2025-10-07T08:17:19.987Z",
    			"org.opencontainers.image.description": "Official docker-composer for wallabag.",
    			"org.opencontainers.image.licenses": "",
    			"org.opencontainers.image.revision": "480d3833bc44c555b6ee76491635fef84ec7dd86",
    			"org.opencontainers.image.source": "https://github.com/wallabag/docker",
    			"org.opencontainers.image.title": "docker",
    			"org.opencontainers.image.url": "https://github.com/wallabag/docker",
    			"org.opencontainers.image.version": "2.6.14"
    		},
    		"StopTimeout": 1
    	},
    	"NetworkSettings": {
    		"SandboxID": "562d8d0e2db1adbfac83511f91282282644aca1213c73f3b045dafdd8b4e3ee9",
    		"SandboxKey": "/var/run/docker/netns/562d8d0e2db1",
    		"Ports": {
    			"80/tcp": null
    		},
    		"Networks": {
    			"bridge": {
    				"IPAMConfig": null,
    				"Links": null,
    				"Aliases": null,
    				"DriverOpts": null,
    				"GwPriority": 0,
    				"NetworkID": "8f978f13fd60cc7921cd3549b2e230d96d2bc04ac162697f7a72d7ce31e6b941",
    				"EndpointID": "f37c91717760955ba1cb4a30298bb32d3a66004a3a4cfeb7a6e98138748cd22d",
    				"Gateway": "172.17.0.1",
    				"IPAddress": "172.17.0.2",
    				"MacAddress": "da:1d:24:9b:5c:ed",
    				"IPPrefixLen": 16,
    				"IPv6Gateway": "",
    				"GlobalIPv6Address": "",
    				"GlobalIPv6PrefixLen": 0,
    				"DNSNames": null
    			}
    		}
    	}
    }
    
  • source
  • parent
  • context
  • [–] 1 point 8 months ago (1 child)

    You should probably add your compose file as well. Which port are you targeting from your frontend, and what are your port bindings? Could be something that @towerful mentioned about the default 80 port..

  • source
  • [–] 1 point 8 months ago* (5 children)

    Reading https://github.com/wallabag/docker I don't see any mention of doc75/wallabag as an official image. Any reason you went with a 3rd party image?

    Also, might be that you aren't exposing the port? Wallabag looks like it runs on port 80. Might be that port 80 is restricted (or in use), so docker desktop can't bind it. Maybe forward a random port to it.

    You can also inspect the container. It will show env vars, networking binds, volume binds etc.
    Make sure they align with what's in the official docker-compose. Once you get that working, you can start tweaking towards your requirement.

  • source
  • [–] 1 point 10 months ago*

    The announcement is thoughful. It explicitely tells user the tool won't reveive maintenance so they know to look for alternatives right know.

    Silently abandonning a project could cause an accumulation of issues, unmerged MRs over time until peole realize the maintainers aren't coming back.

  • source
  • view more: next ›