Ivan
TheOneReborn
покажи весь докерфайл
# Use a base image with Selenium and Chrome
FROM selenium/standalone-chrome
# Set the working directory inside the container
WORKDIR /app
# Copy the requirements.txt from the project root to the container
COPY requirements.txt /app/
# Copy the container script from the dockerfiles directory into the container
COPY ./app/dockerfiles/browser_login_container.py /app/scripts/
# Copy the entire scripts directory for access to necessary scripts
COPY ./app/scripts /app/scripts/
# Fix permissions for the /var/lib/apt/lists directory
USER root
RUN mkdir -p /var/lib/apt/lists/partial && \
chmod -R 777 /var/lib/apt/lists
# Install Python, pip, and the correct venv package
RUN apt-get update && \
apt-get install --no-install-recommends -y python3 python3-pip python3.12-venv && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
# Install Xvfb and other necessary packages
RUN apt-get update && \
apt-get install -y xvfb && \
apt-get install -y ffmpeg dbus-x11 x11-utils
# Create a virtual environment and activate it
RUN python3 -m venv /app/venv
# Install Python dependencies inside the virtual environment
RUN /app/venv/bin/pip install --no-cache-dir -r /app/requirements.txt
# Set the virtual environment as the default Python and pip
ENV PATH="/app/venv/bin:$PATH"
# Run Xvfb as part of the container start
CMD ["sh", "-c", "Xvfb :99 -screen 0 1920x1080x24 &> /dev/null & DISPLAY=:99 python3 /app/scripts/browser_login_container.py"]
Ivan
добавь перед смд, и посмотри при сборке, есть ли файл
RUN ls -la /app/scripts/
TheOneReborn
Ildar
Ребят почему контейнер swagger-ui может не видеть swagger.json который лежит у него? (ls показывает)
А видит при рестарте контейнера?
Json файл генерируется в другом контейнере. У них общая папка в volume
Ivan
Ildar
а в логах что?
А в каких? Сваггер когда файловую систему читает молчит же
Ivan
Ildar
Ildar
Или как то еще можно? Я в пайплане создаю json. Можно как то командой млжно почистить?
Ivan
Ctrl f5 в браузере - да
да, так
ну тут может по факту файла нету при старте сваггера, тут либо задержку на старт сваггера ставить либо проверять есть ли файл и тогда стартовать
Limbend
Искал пример Dockerfile для python:3.9-slim
Нашел несколько раз использование такой конструкции FROM python:3.9 AS builder. Зачем она нужна если оба докерфайла дают рабочий контейнер с плюс минус одним размером?
FROM python:3.9 AS builder
RUN mkdir /app
WORKDIR /app
ADD ./requirements.txt .
RUN pip wheel --no-cache-dir --no-deps --wheel-dir ./wheels -r ./requirements.txt
FROM python:3.9-slim
LABEL version="0.1"
WORKDIR /app
COPY --from=builder /app/wheels ./wheels
COPY --from=builder /app/requirements.txt .
RUN pip install --no-cache ./wheels/*
ADD ./backend/ ./backend/
WORKDIR /app/backend/
CMD ["gunicorn", "main:app", "--workers", "1", "--worker-class", "uvicorn.workers.UvicornWorker", "--bind=0.0.0.0:8000"]
Второй вариант:
FROM python:3.9-slim
LABEL version="0.1"
WORKDIR /app
ADD ./requirements.txt .
RUN pip install -r ./requirements.txt
ADD ./backend/ ./backend/
WORKDIR /app/backend/
CMD ["gunicorn", "main:app", "--workers", "1", "--worker-class", "uvicorn.workers.UvicornWorker", "--bind=0.0.0.0:8000"]
Ivan
Искал пример Dockerfile для python:3.9-slim
Нашел несколько раз использование такой конструкции FROM python:3.9 AS builder. Зачем она нужна если оба докерфайла дают рабочий контейнер с плюс минус одним размером?
FROM python:3.9 AS builder
RUN mkdir /app
WORKDIR /app
ADD ./requirements.txt .
RUN pip wheel --no-cache-dir --no-deps --wheel-dir ./wheels -r ./requirements.txt
FROM python:3.9-slim
LABEL version="0.1"
WORKDIR /app
COPY --from=builder /app/wheels ./wheels
COPY --from=builder /app/requirements.txt .
RUN pip install --no-cache ./wheels/*
ADD ./backend/ ./backend/
WORKDIR /app/backend/
CMD ["gunicorn", "main:app", "--workers", "1", "--worker-class", "uvicorn.workers.UvicornWorker", "--bind=0.0.0.0:8000"]
Второй вариант:
FROM python:3.9-slim
LABEL version="0.1"
WORKDIR /app
ADD ./requirements.txt .
RUN pip install -r ./requirements.txt
ADD ./backend/ ./backend/
WORKDIR /app/backend/
CMD ["gunicorn", "main:app", "--workers", "1", "--worker-class", "uvicorn.workers.UvicornWorker", "--bind=0.0.0.0:8000"]
не всегда в слимах хватает библиотек для установки рекваев
Limbend
🐾
Здравствуйте. Пытаюсь начать работу с nebula graph. При запуске docker compose пишет "panic: Fail to initialize the connection pool, host: graphd, port: 9669, failed to open connection, error: failed to open transport, error: dial tcp [Docker IP]:9669: connect: connection refused
" и не отображаются логи во всех контейнерах кроме контейнера консоли (скрин приложу ниже). Подскажите, как можно это исправить? С чем обычно связана такая проблема?
Aleksey
🐾
привет порты забыл
Я извинюясь за глупый вопрос но не совсем понял вас) Я докер только недавно начал осваивать. Вы имеете ввиду что я забыл вам скинуть для понимания ошибки еще порты какие то?
Aleksey
Махмуд
кто-нибудь пользовался https://github.com/louislam/dockge
?
это брат-близнец портейнера?
или лучше/хуже?
🐾
omodotori
Всем привет, я в линукс пыталась запустить докер но он выдает ошибку, уже 6 месяцев прошло никак не могу понять в чем ошибка
omodotori
Можете помочь?
omodotori
omodotori
Я вроде все правильно и по инструкции делала , даже убунту переустанавливала
Интригуешь,
omodotori
пробовала вышла какая та другая ошибка
Интригуешь,
omodotori
Скрин
Сейчас скину , заново переустанавливаю просто
omodotori
omodotori
nable to find image 'docker/whalesay:latest' locally
latest: Pulling from docker/whalesay
docker: [DEPRECATION NOTICE] Docker Image Format v1 and Docker Image manifest version 2, schema 1 support is disabled by default and will be removed in an upcoming release. Suggest the author of docker.io/docker/whalesay:latest to upgrade the image to the OCI Format or Docker Image manifest v2, schema 2. More information at https://docs.docker.com/go/deprecated-image-specs/.
See 'docker run --help'.
omodotori
Написано что это устаревший образ хотя брала я его для проверки с оф сайта
omodotori
Но значит ли что я его установила?
Интригуешь,
Если выведет надпись, то всё хорошо и всё в принципе работает и это означает то, что тот образ, который ты хочешь запустить - автор его не обновлял очень давно
Интригуешь,
Если я правильно понял, то этот образ обновлялся последний раз 9 лет назад
Интригуешь,
https://hub.docker.com/r/docker/whalesay/tags
omodotori
Интригуешь,
omodotori
Урааа
omodotori
спасибо вам
Интригуешь,
Просто тот image старый
Интригуешь,
omodotori
А что делать дальше ? я не вижу докер, надо будет его настраивать?😭
Интригуешь,
omodotori
вот только знаю как делать боты а насчёт докера нет
omodotori
куда писать , где писать....
Интригуешь,
Пишешь 'docker ps - a' увидишь запущенные контейнеры
docker images - загруженные и лежащие локально image
Интригуешь,
В директории где лежит docker-compose.yml файл выполняешь команду - docker compose up и сервисы, описанные в файле, докер запустит
Интригуешь,
На ютубе же есть многое количество уроков
omodotori
Спасибо что направили
Ed 😴
Здравствуйте, у меня на постоянке работает docker, что будет если я установлю virtualbox и буду запускать на ней windowsXP, одновременно с кучей мелких docker контейнеров. Такое вообще можно?
Максим
Alex
Ed 😴
спасибо
Максим
VirtualBox 6.0 с поддержкой Hyper-V вышел 6 лет назад
omodotori
но что мне вбить в поиск что бы вышли такие видео?
Интригуешь,
Docker с нуля
Docker compose 'свой язык программирования'
x`
у меня на серваке в докере крутиться приложение, вчера все нормально работало, сегодня захожу, сайт упал, перезапускаю докер композ и пишет что бд не существует, оказалось что она куда то просто пропала... Сама дропнулась видимо или что то такое. Кто знает в чем может быть причина или как можно узнать причину, по логам каким то может?
Максим
x`
Максим
Ща бы отлаживать композ без .yml
И логов
x`
Максим
Если кто-то прибивал контейнеры через docker-compose down, да и ещё вольюмы удалил аргументом -v - земля пуховиком
x`
Максим
x`
да я блять думал что если я перезапущу то пофикситься как то
x`
оказалось что нет
Максим
down -v?
x`
да
x`
down -v