📜  unifi 控制器 docker (1)

📅  最后修改于: 2023-12-03 14:48:11.003000             🧑  作者: Mango

使用 Docker 部署 UniFi 控制器


如果你运营着多个 UniFi 网络,那么使用 UniFi 控制器来统一管理它们是一个不错的选择。Docker 软件容器技术提供了强大的工具来方便地部署 UniFi 控制器,无论是在本地主机还是云环境中。

在本文中,我们将介绍如何使用 Docker 部署 UniFi 控制器,并说明如何在本地主机和云环境中安装并运行它。

准备工作

在开始使用 Docker 部署 UniFi 控制器之前,你需要做好以下准备工作:

  1. 安装 Docker

    在本地主机和云环境中安装 Docker。关于如何安装 Docker,可以参考 Docker 官方文档

  2. 创建 Docker 网络

    UniFi 控制器使用的一些端口必须在容器和主机之间进行转发,因此我们需要创建一个 Docker 网络来管理它们。在命令行中运行以下命令:

    $ docker network create unifi
    

    这将创建一个名为 unifi 的 Docker 网络。

在本地主机中安装 UniFi 控制器

在本地主机中安装 UniFi 控制器非常简单。只需在终端中运行以下命令,即可下载 Docker 镜像并运行容器:

$ docker run -d \
  --name unifi \
  --restart always \
  --network unifi \
  -p 3478:3478/udp \
  -p 10001:10001/udp \
  -p 8080:8080 \
  -p 8443:8443 \
  -p 8880:8880 \
  -p 8843:8843 \
  -v unifi_data:/unifi/data \
  -v unifi_log:/unifi/log \
  -v unifi_run:/unifi/run \
  jacobalberty/unifi:latest

这将下载最新版本的 UniFi 控制器镜像,并在新容器中运行它。这条命令还将启用一系列映射的端口,将容器内的数据卷映射到主机上,并将容器添加到 Docker 网络中。

现在,你可以访问 UniFi 控制器的网络管理界面了。只需在 Web 浏览器中访问 http://localhost:8443/ 即可(或者直接访问 https://localhost:8443/,但需要接受一个安全证书)。登录时,请使用默认的用户名和密码:ubnt

在云环境中安装 UniFi 控制器

与在本地主机中安装 UniFi 控制器相比,使用 Docker 在云环境中安装它需要进行一些调整。

首先,你需要创建一个云环境,并确保安全组配置允许从外部访问所需的端口。需要打开的端口包括 808084433478/udp10001/udp88808843

然后,我们需要将 SSL 证书导入容器中。如果你已经 have 证书文件,请将它们命名为 cert.crtkey.crt,然后将它们存储在主机上的 ~/unifi-certs 目录中。

最后,在云环境中运行以下命令来安装 UniFi 控制器:

$ docker run -d \
  --name unifi \
  --restart always \
  --network unifi \
  -p 3478:3478/udp \
  -p 10001:10001/udp \
  -p 8080:8080 \
  -p 8443:8443 \
  -p 8880:8880 \
  -p 8843:8843 \
  -v ~/unifi-certs:/usr/lib/unifi/data/cert \
  -v unifi_data:/unifi/data \
  -v unifi_log:/unifi/log \
  -v unifi_run:/unifi/run \
  jacobalberty/unifi:latest

与本地安装相比,唯一的变化是加入了一个新的 -v 标志来映射证书到容器中。

现在您可以访问 UniFi 控制器,方法与本地安装相同。只需在 Web 浏览器中访问 https://your.server.ip:8443/,其中 your.server.ip 是您服务器的公共IP地址。

结论

在本文中,我们学习了如何使用 Docker 部署 UniFi 控制器,可以在本地主机和云环境中运行它。通过使用 Docker 的工具,管理多个 UniFi 网络变得更加容易和高效。