code-server 配置maven

我是打算在阿里的轻量服务器上搭建一个code-server,用来自己测试一些简单的java代码。

有些代码依赖了第三方包,需要下载依赖,所以需要给code-server安装maven。

宿主机已经安装好了maven,挂载和环境变量也弄完了,然后在容器终端中执行mvn help:effective-settings,就会报下述的错误:

mvn构建报错,无法下载包。

执行 curl -I https://maven.aliyun.com/repository/public命令,发现

can't resolve maven.aliyun.com ,说明是DNS有问题。

原因:

是因为宿主机的域名服务器是阿里云内部地址,容器启动后的环境中继承使用了这个内部地址,所以当然是无法解析域名。所以需要修改docker的DNS配置,让所有容器都不要继承使用内部nameserver,而改用外部地址,如223.5.5.5和8.8.8.8

修改方式:

bash 复制代码
"dns": [
    "223.5.5.5",
    "8.8.8.8"
  ],
  "dns-search": []

然后重启docker

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl restart docker

同时我也把轻量服务器的防火墙UDP53端口也打开了,AI说是DNS的端口

BTW:

下图是我docker-compose的配置文件,如果在这里加入的dns的配置,是无效的。因为我这里使用了外部网络,当你的external是为true的话,即使你写明了dns配置也是无效的,因为容器会使用外部网络自己的配置。

相关推荐
serve the people几秒前
python环境搭建 (十二) pydantic和pydantic-settings类型验证与解析
java·网络·python
梁洪飞7 分钟前
内核的schedule和SMP多核处理器启动协议
linux·arm开发·嵌入式硬件·arm
lekami_兰15 分钟前
Java 并发工具类详解:4 大核心工具 + 实战场景,告别 synchronized
java·并发工具
_运维那些事儿20 分钟前
VM环境的CI/CD
linux·运维·网络·阿里云·ci/cd·docker·云计算
有位神秘人21 分钟前
Android中Notification的使用详解
android·java·javascript
Y1rong1 小时前
linux之文件IO
linux
tb_first1 小时前
LangChain4j简单入门
java·spring boot·langchain4j
Trouvaille ~1 小时前
【Linux】UDP Socket编程实战(一):Echo Server从零到一
linux·运维·服务器·网络·c++·websocket·udp
独自破碎E2 小时前
【BISHI9】田忌赛马
android·java·开发语言
嵌入小生0072 小时前
Shell | 命令、编程及Linux操作系统的基本概念
linux·运维·服务器