新建macvlan接口
1 2 3 4 5 6 7 8 9 10
| docker network create -d macvlan -o parent=【eth0】 【eNet】 \ --subnet=【Network IP】 \ --ip-range=【IP Range】 \ --gateway=【Gateway IP】
例子: docker network create -d macvlan -o parent=ovs_eth0 macnet --subnet=192.168.2.0/24 --ip-range=192.168.2.128/29 --gateway=192.168.2.1
docker run -d --name=qbittorrent --network macnet -e PUID=1026 -e PGID=100 -e TZ=Asia/Shanghai -e WEBUI_PORT=80 -v /volume1/docker/qbittorrent/config:/config -v /volume1/downloads:/downloads/vol1 -v /volume2/downloads2:/downloads/vol2 -v /volume4/media:/downloads/vol4 --restart unless-stopped linuxserver/qbittorrent:amd64-latest
|
Dockerfile:
1 2 3 4 5 6 7 8 9 10 11 12
| FROM debian:latest COPY start.sh torrc /tmp/ RUN apt-get update \ && apt-get -y install openssh-server tor cron sudo rsyslog \ && rm -rf /var/lib/apt/lists/* \ && cat /tmp/torrc >> /etc/tor/torrc \ && chmod +x /tmp/start.sh \ && useradd -d /home/jervis -M -s /bin/bash -g root -G sudo jervis \ && echo "root:1"|chpasswd \ && echo "jervis:1"|chpasswd
ENTRYPOINT ["/bin/sh", "/tmp/start.sh"]
|
torrc
1 2 3 4 5 6 7
| ControlPort 9051 HashedControlPassword 16:876313025F85703C60CD9BCDFA1AE88349D9C67D23C97B6754649ADD05
StrictNodes 1
ExitNodes {at},{jp},{tw},{sg},{my}
|
start.sh
1 2 3 4 5 6 7 8 9 10
| #!/bin/sh service rsyslog start service ssh start service cron start service tor start
touch /var/log/docker.log tail -f /var/log/docker.log
|
1
| docker build -t spideros .
|
1
| docker run -d --restart always --name spiderDebian --hostname gingerOS --privileged --network macnet --ip 192.168.2.20 -v /volume3/backup:/backup -v /volume1/docker/spider-debian:/home/jervis -v /volume1/web:/web spideros
|
一些问题
- 某些服务无法重启动,比如service xxx stop无法停止:可能是无权限读取/proc内cwd, exe文件,docker用高权限(–privileged)启动即可;
后续完善
1 2 3 4
| 时区: dpkg-reconfigure tzdata 编码: apt install locales && dpkg-reconfigure locales
|
修改已经存在的容器配置
先docker inspect 容器id,查看配置路径,比如修改hostname,可以执行
1
| docker inspect 容器id | grep -i hostname
|
取得容器目录,进入目录,修改config.v2.json,然后记得重启docker服务就会生效。
static IP设置,群晖需要手动修改config.v2.json
1 2 3 4 5
| "Networks": { "macnet": { "IPAMConfig": { "IPv4Address": "192.168.2.132" },
|