# 用 Docker 解决端口错误的问题

- Link: https://www.ixiqin.com/2021/03/07/with-the-docker-solve-the-problem-of-port-error/
- Published: 2021-03-07T22:40:02+08:00
- Author: 白宦成

在进行嵌入式设备的编写的时候，一个很大的问题是重新刷写应用程序的成本较高，因此，
在一些场景下， 我们尽可能通过修改服务端的应用，来解决嵌入式端的错误问题，而尽可能
避免对嵌入式设备重新刷写。

> 我是在处理 Awtrix 2.0 的时候想到这个办法的。

Docker 在启动应用的时候，可以设置端口监听，通过 `docker -p host_port:container_port`
来创建容器，可以指定容器内部端口和主机监听端口的映射。

假设业务监听的是 80 端口，你可以通过 `-p 81:80` 将容器的 80 转发到宿主机的 81 端
口上。同样的，你可以在遇见端口问题的时候，通过修改相应的宿主机端口，在外层加一层
转发，从而解决掉端口编写错误的问题。

不过，需要注意的是，毕竟是加了一层应用程序的转发，相应的，性能会有所损耗，如果可以
的话，尽可能还是修改嵌入式设备，减少性能损耗的点。
