Задать вопрос
ShadowOfCasper
@ShadowOfCasper
Middle User Interface Web Developer

Почему докер не может увидеть файл при попытке запуска, но ls вывод говорит что файл есть?

Докерфайл:
# STAGE 1: Build
FROM oven/bun AS build

WORKDIR /app

# Установка зависимостей
COPY package.json .
RUN bun install

# Копируем исходники
COPY ./src ./src

# Собираем бинарь
ENV NODE_ENV=production

RUN bun build ./src/index.ts --compile --target=bun --outfile=server && \
  chmod +x ./server

# STAGE 2: Run
FROM alpine:latest

WORKDIR /app

# Копируем бинарь
COPY --from=build /app/server /app/server

CMD ["/app/server"]

EXPOSE 3004

При попытке запуска docker compose получаю ошибку
Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: exec: "/app/server": stat /app/server: no such file or directory: unknown
Смотрю в контейнер:
docker run -it --rm elysia-app ls -la /app
Получаю
total 99424
drwxr-xr-x    1 root     root          4096 Jun  9 18:09 .
drwxr-xr-x    1 root     root          4096 Jun  9 18:10 ..
-rwxrwxrwx    1 root     root     101800968 Jun  9 18:09 server

То есть он как бы есть
docker run -it elysia-app /app/server
exec /app/server: no such file or directory
Но его при этом нет. Суслик какой-то получается.
Пробовал кэш убить, пробовал вообще всё пересоздать через prune. Ничего не помогает, файл сервера продолжает косплеить суслика! Не знаю что делать, впервые с таким сталкиваюсь. Даже нейронки ничего дельного сказать не могут
  • Вопрос задан
  • 111 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы