无法使用 Dockerfile 在 docker 容器中安装包
Can't install packages in docker container using Dockerfile
我想通过 Dockerfile 在 docker 映像中安装一个包。
docker-compose.yml:
version: "3.5"
services:
transmission:
build:
context: .
dockerfile: Dockerfile
image: ghcr.io/linuxserver/transmission
container_name: transmission
environment:
- PUID=1000
- PGID=1000
volumes:
- ./config/public:/config
- /data:/data
ports:
- 60020:60020
- 60010:60010
- 60010:60010/udp
restart: unless-stopped
network_mode: host
Docker 文件:
RUN apk update
RUN apk add --no-cache flac
在 Dockerfile 中,我指定要安装 flac 包。
之后我 运行 docker-compose up -d
和 sudo docker exec -it transmission bash
检查它是否存在,但它不存在。
我做错了什么?
您的 Dockerfile 无效(如果您发布了整个文件)。您还在 docker-compose 文件中指定了 build:
和 image:
标签,当您想要构建图像并在构建时给它一个标签时使用。
我认为您想要完成的是将 flac 添加到传输图像中。为此,您需要像这样创建一个 Dockerfile
FROM ghcr.io/linuxserver/transmission
RUN apk update
RUN apk add --no-cache flac
然后在您的 docker-compose 文件中,像这样删除图像规范
version: "3.5"
services:
transmission:
build:
context: .
dockerfile: Dockerfile
container_name: transmission
environment:
- PUID=1000
- PGID=1000
volumes:
- ./config/public:/config
- /data:/data
ports:
- 60020:60020
- 60010:60010
- 60010:60010/udp
restart: unless-stopped
network_mode: host
我想通过 Dockerfile 在 docker 映像中安装一个包。
docker-compose.yml:
version: "3.5"
services:
transmission:
build:
context: .
dockerfile: Dockerfile
image: ghcr.io/linuxserver/transmission
container_name: transmission
environment:
- PUID=1000
- PGID=1000
volumes:
- ./config/public:/config
- /data:/data
ports:
- 60020:60020
- 60010:60010
- 60010:60010/udp
restart: unless-stopped
network_mode: host
Docker 文件:
RUN apk update
RUN apk add --no-cache flac
在 Dockerfile 中,我指定要安装 flac 包。
之后我 运行 docker-compose up -d
和 sudo docker exec -it transmission bash
检查它是否存在,但它不存在。
我做错了什么?
您的 Dockerfile 无效(如果您发布了整个文件)。您还在 docker-compose 文件中指定了 build:
和 image:
标签,当您想要构建图像并在构建时给它一个标签时使用。
我认为您想要完成的是将 flac 添加到传输图像中。为此,您需要像这样创建一个 Dockerfile
FROM ghcr.io/linuxserver/transmission
RUN apk update
RUN apk add --no-cache flac
然后在您的 docker-compose 文件中,像这样删除图像规范
version: "3.5"
services:
transmission:
build:
context: .
dockerfile: Dockerfile
container_name: transmission
environment:
- PUID=1000
- PGID=1000
volumes:
- ./config/public:/config
- /data:/data
ports:
- 60020:60020
- 60010:60010
- 60010:60010/udp
restart: unless-stopped
network_mode: host