重启后 Docker 容器在浏览器中无法访问 - Raspberry Pi 4

重启后 Docker 容器在浏览器中无法访问 - Raspberry Pi 4

树莓派 4 树莓派操作系统精简版 Docker 23.0.0

重启后,Docker 容器在浏览器中无法访问,我以为可能是因为容器没有启动,但看起来它们确实启动了。但我不确定为什么它们无法访问。作为尝试补救措施,我运行了以下命令:

docker run -d --restart always [Container] 

要不就:

docker start [Container]

我似乎能找到的唯一解决方案是重新安装容器,但这是没用的,因为我会丢失数据,并且每次重启后都必须重新设置应用程序。

以下是我所做的:

我首先检查了正在运行的容器:

pi@raspberrypi4:~ $ docker ps
CONTAINER ID   IMAGE                    COMMAND                  CREATED         STATUS              PORTS                                       NAMES
cea07c9a5d01   searxng/searxng          "/sbin/tini -- /usr/…"   2 minutes ago   Up About a minute   8080/tcp                                   elegant_bhabha

关注搜索你可以看到它正在运行:

cea07c9a5d01 searxng/searxng "/sbin/tini -- /usr/…" 2 分钟前 大约一分钟 8080/tcp

然后我尝试重新启动 Searxng,看看它是否能在浏览器中运行:

pi@raspberrypi4:~ $ docker restart elegant_bhabha
elegant_bhabha

我继续检查 Searxng 是否已启动,并且可以通过浏览器通过 192.168.50.168:8080 访问,结果没有。

pi@raspberrypi4:~ $ docker ps
CONTAINER ID   IMAGE                    COMMAND                  CREATED         STATUS         PORTS                                       NAMES
cea07c9a5d01   searxng/searxng          "/sbin/tini -- /usr/…"   3 minutes ago   Up 2 minutes   8080/tcp                                   elegant_bhabha

然后我重新执行安装过程以使其正常工作:

pi@raspberrypi4:~ $ cd my-instance
pi@raspberrypi4:~/my-instance $ export PORT=8080
pi@raspberrypi4:~/my-instance $ docker pull searxng/searxng
Using default tag: latest
latest: Pulling from searxng/searxng
Digest: sha256:3d656c623ce5293633e4e0d7fcf4bc47e17dc4dc13d4300173b57b0d73879270
Status: Image is up to date for searxng/searxng:latest
docker.io/searxng/searxng:latest
pi@raspberrypi4:~/my-instance $ docker run --rm \
             -d -p ${PORT}:8080 \
             -v "${PWD}/searxng:/etc/searxng" \
             -e "BASE_URL=http://localhost:$PORT/" \
             -e "INSTANCE_NAME=my-instance" \
             searxng/searxng
8b914f2122817a3f301fa0b550ccc600426728fe30098ae845d950547f1fa9b0

如下所示,重新安装容器后发生了变化,重新安装后,现在可以在浏览器中通过 192.168.50.168:8080 访问容器,但当然我必须再次设置应用程序。每次重启后,我都必须对安装的每个 docker 容器执行此操作。

pi@raspberrypi4:~/my-instance $ docker ps
CONTAINER ID   IMAGE                    COMMAND                  CREATED          STATUS          PORTS                                       NAMES
8b914f212281   searxng/searxng          "/sbin/tini -- /usr/…"   15 seconds ago   Up 12 seconds   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp   gifted_gagarin
cea07c9a5d01   searxng/searxng          "/sbin/tini -- /usr/…"   7 minutes ago    Up 6 minutes    8080/tcp                                  elegant_bhabha

每次我安装任何容器时,它都能正常工作,并且可以在浏览器中访问。然后重启后它们就不起作用了,运行重启命令也不起作用。我不知道如何解决这个问题,有什么想法吗?

相关内容