修改docker代码

This commit is contained in:
bjdgyc 2024-10-24 11:20:45 +08:00
parent 49b40b5ee4
commit 772b1118eb
6 changed files with 31 additions and 10 deletions

View File

@ -390,7 +390,17 @@ ipv4_end = "10.1.2.200"
docker run -it --rm bjdgyc/anylink tool -d docker run -it --rm bjdgyc/anylink tool -d
``` ```
6. 启动容器 6. iptables兼容设置
```bash
# 默认 iptables 使用 nf_tables 设置转发规则,如果内核低于 4.19 版本,需要特殊配置
docker run -itd --name anylink --privileged \
-e IPTABLES_LEGACY=on \
-p 443:443 -p 8800:8800 -p 443:443/udp \
--restart=always \
bjdgyc/anylink
```
7. 启动容器
```bash ```bash
# 默认启动 # 默认启动
docker run -itd --name anylink --privileged \ docker run -itd --name anylink --privileged \
@ -410,7 +420,7 @@ ipv4_end = "10.1.2.200"
docker restart anylink docker restart anylink
``` ```
6. 使用自定义参数启动容器 8. 使用自定义参数启动容器
```bash ```bash
# 参数可以参考 ./anylink tool -d # 参数可以参考 ./anylink tool -d
# 可以使用命令行参数 或者 环境变量 配置 # 可以使用命令行参数 或者 环境变量 配置
@ -459,7 +469,8 @@ ipv4_end = "10.1.2.200"
- [AnyConnect Secure Client](https://www.cisco.com/) (可通过群文件下载: Windows/macOS/Linux/Android/iOS) - [AnyConnect Secure Client](https://www.cisco.com/) (可通过群文件下载: Windows/macOS/Linux/Android/iOS)
- [OpenConnect](https://gitlab.com/openconnect/openconnect) (Windows/macOS/Linux) - [OpenConnect](https://gitlab.com/openconnect/openconnect) (Windows/macOS/Linux)
- [三方 AnyLink Secure Client](https://github.com/tlslink/anylink-client) (Windows/macOS/Linux) - [三方 AnyLink Secure Client](https://github.com/tlslink/anylink-client) (Windows/macOS/Linux)
- 【推荐】三方客户端下载地址(Windows/macOS/Linux/Android/iOS) [国内地址](https://ocserv.yydy.link:2023) [国外地址](https://cisco.yydy.link/#/) - 【推荐】三方客户端下载地址(
Windows/macOS/Linux/Android/iOS) [国内地址](https://ocserv.yydy.link:2023) [国外地址](https://cisco.yydy.link/#/)
## Contribution ## Contribution

View File

@ -38,7 +38,9 @@ LABEL maintainer="github.com/bjdgyc"
ARG CN="no" ARG CN="no"
ENV TZ=Asia/Shanghai ENV TZ=Asia/Shanghai
ENV ANYLINK_IN_CONTAINER=true #开关变量 on off
ENV ANYLINK_IN_CONTAINER="on"
ENV IPTABLES_LEGACY="off"
WORKDIR /app WORKDIR /app
COPY docker/init_release.sh /tmp/ COPY docker/init_release.sh /tmp/

View File

@ -1,4 +1,4 @@
#!/bin/sh #!/bin/bash
var1=$1 var1=$1
#set -x #set -x
@ -19,13 +19,19 @@ case $var1 in
#iptables -nL -t nat #iptables -nL -t nat
# 启动服务 先判断配置文件是否存在 # 启动服务 先判断配置文件是否存在
if [ ! -f /app/conf/profile.xml ]; then if [[ ! -f /app/conf/profile.xml ]]; then
/bin/cp -r /home/conf-bak/* /app/conf/ /bin/cp -r /home/conf-bak/* /app/conf/
echo "After the configuration file is initialized, the container will be forcibly exited. Restart the container." echo "After the configuration file is initialized, the container will be forcibly exited. Restart the container."
echo "配置文件初始化完成后,容器会强制退出,请重新启动容器。" echo "配置文件初始化完成后,容器会强制退出,请重新启动容器。"
exit 1 exit 1
fi fi
# 兼容老版本 iptables
if [[ $IPTABLES_LEGACY == "on" ]]; then
rm /sbin/iptables
ln -s /sbin/iptables-legacy /sbin/iptables
fi
exec /app/anylink "$@" exec /app/anylink "$@"
;; ;;
esac esac

View File

@ -13,10 +13,11 @@ fi
# docker 启动使用 4.19 以上内核 # docker 启动使用 4.19 以上内核
apk add --no-cache ca-certificates bash iproute2 tzdata iptables apk add --no-cache ca-certificates bash iproute2 tzdata iptables
# alpine:3.19 兼容老版 iptables # alpine:3.19 兼容老版 iptables
apk add --no-cache iptables-legacy apk add --no-cache iptables-legacy
rm /sbin/iptables
ln -s /sbin/iptables-legacy /sbin/iptables #rm /sbin/iptables
#ln -s /sbin/iptables-legacy /sbin/iptables
chmod +x /app/docker_entrypoint.sh chmod +x /app/docker_entrypoint.sh

View File

@ -22,7 +22,7 @@ var (
func initMod() { func initMod() {
container := os.Getenv(inContainerKey) container := os.Getenv(inContainerKey)
if container == "true" { if container == "on" {
InContainer = true InContainer = true
} }
log.Println("InContainer", InContainer) log.Println("InContainer", InContainer)

View File

@ -86,6 +86,7 @@
label="唯一MAC"> label="唯一MAC">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag v-if="scope.row.unique_mac" type="success"></el-tag> <el-tag v-if="scope.row.unique_mac" type="success"></el-tag>
<el-tag v-else type="info"></el-tag>
</template> </template>
</el-table-column> </el-table-column>