Создание Dockerfile для SQLite довольно просто, так как сама SQLite является легковесной СУБД и не требует сложной настройки. Ниже приведен пример Dockerfile, который включает в себя SQLite и добавляет предварительно созданную базу данных в контейнер.
1. Создайте файл с именем `Dockerfile`.
2. Добавьте в него следующий код:
```dockerfile
# Используем официальный образ для Python в качестве базового
FROM python:3.9-slim
# Устанавливаем необходимые зависимости
RUN apt-get update && \
apt-get install -y sqlite3 && \
apt-get clean
# Устанавливаем рабочую директорию
WORKDIR /app
# Копируем вашу предварительно созданную базу данных SQLite в контейнер
COPY your_database.db /app/your_database.db
# Если у вас есть скрипты или приложение, использующее базу данных, копируем их в контейнер
# COPY your_script.py /app/your_script.py
# Указываем команду по умолчанию, если необходимо
# CMD ["python", "your_script.py"]
# Экспортируем порт, если ваше приложение использует его
# EXPOSE 8080
```
### Подробности:
1. **Базовый образ**: В данном случае мы используем `python:3.9-slim` как базовый образ. Вы можете изменить его на другой образ, если ваша система требует другие зависимости.
2. **Установка SQLite**: Мы обновляем список пакетов и устанавливаем `sqlite3`. Вы можете добавить любые другие зависимости, которые вам нужны.
3. **Рабочая директория**: Устанавливаем рабочую директорию `/app`, в которую будут скопированы все необходимые файлы.
4. **Копирование базы данных**: Используйте команду `COPY` для копирования предварительно созданной базы данных (например, `your_database.db`) в контейнер.
5. **Скрипты и приложения**: Вы можете добавить дополнительный код или скрипты, которые будут взаимодействовать с вашей базой данных. Это делается с помощью дополнительных команд `COPY`.
6. **Команда по умолчанию**: Вы можете настроить точку входа для вашего приложения с помощью команды `CMD`. Если у вас есть скрипт Python, который должен быть запущен, укажите его здесь.
7. **Экспорт порта**: Если ваше приложение требует внешнего доступа по определенному порту, укажите это с помощью команды `EXPOSE`.
### Сборка и запуск контейнера
1. Сначала постройте образ с помощью команды в каталоге, где находится ваш Dockerfile:
```sh
docker build -t my-sqlite-app .
```
2. Затем запустите контейнер:
```sh
docker run -it --rm my-sqlite-app
```
Теперь у вас есть Docker-контейнер с SQLite и заранее созданной базой данных. Вы можете модифицировать приведенный выше Dockerfile в зависимости от ваших конкретных требований.