this post was submitted on 26 Feb 2026
1 points (100.0% liked)

Docker

1401 readers
1 users here now

founded 2 years ago
MODERATORS
 

Update: I've gone back to standard docker-compose. It's actually easier for me than Docker Desktop. Thanks all for the helpful suggestions.

Due to persistent brain fog lately, I opted for Docker Desktop on this machine. I chose the image from doc75/wallabag:prev-prod and ran it. But I can't access it from the frontend.

I'd rather get it going through Docker Desktop rather than the usual docker compose via terminal. Can anyone help?

Logs, as requested:

 [OK] Cache for the "prod" environment (debug=false) was successfully cleared.  



 Trying to install assets as relative symbolic links.



***
------------------------ ------------------ 

      Bundle                   Method / Error    


***
------------------------ ------------------ 

  ✔   NelmioApiDocBundle       relative symlink  

  ✔   CraueConfigBundle        relative symlink  

  ✔   BabDevPagerfantaBundle   relative symlink  

  ✔   FOSJsRoutingBundle       relative symlink  


***
------------------------ ------------------ 


 [OK] All assets were successfully installed.                                   


wallabag is ready!

::1 - - [26/Feb/2026:20:23:52 +0000] "GET /api/info HTTP/1.1" 200 81 "-" "healthcheck"

Package php-http/message-factory is abandoned, you should avoid using it. Use psr/http-factory instead.

Package scheb/2fa-qr-code is abandoned, you should avoid using it. No replacement was suggested.

Package sensio/framework-extra-bundle is abandoned, you should avoid using it. Use Symfony instead.

Package symfony/debug is abandoned, you should avoid using it. Use symfony/error-handler instead.

Package symfony/inflector is abandoned, you should avoid using it. Use EnglishInflector from the String component instead.

Package wallabag/php-mobi is abandoned, you should avoid using it. No replacement was suggested.

Package php-cs-fixer/diff is abandoned, you should avoid using it. No replacement was suggested.

Package symfony/web-server-bundle is abandoned, you should avoid using it. No replacement was suggested.

Generating optimized autoload files

101 packages you are using are looking for funding.

Use the `composer fund` command to find out more!

> Incenteev\ParameterHandler\ScriptHandler::buildParameters

> bin/console cache:clear --no-warmup

> bin/console assets:install web --symlink --relative
you are viewing a single comment's thread
view the rest of the comments
[–] towerful@programming.dev 1 points 2 days ago* (last edited 2 days ago) (1 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.

[–] FarraigePlaisteach@lemmy.world 2 points 2 days ago* (last edited 2 days ago) (1 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
			}
		}
	}
}
[–] towerful@programming.dev 2 points 1 day ago (1 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)

[–] FarraigePlaisteach@lemmy.world 2 points 1 day ago (1 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.

[–] towerful@programming.dev 2 points 1 day ago (1 children)

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.

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!