s
я тут бот сделал который синхронизируется с Яндекс календарём и делает напоминание за день до наступления событий
s
удобно для тех кто использует телеграмм на постоянной основе
s
просто в календаре делаете события и телеграмм вам напоминает
s
@calendar_yendex_bot
s
можете кто нибуд потестит
s
не никакой паролей не надо, когда старт нажмешь покажет что нужно
s
просто ссылка на календарь
Интригуешь,
Интригуешь,
Не отвечает
Dan
Главное, чтобы в докере бот был. Хоть так эта информация будет связана с темой чатика :)
Max
...
всем доброго времени суток, знатоки докера помогите мне с postgresql настроить его под проект
Интригуешь,
Marsh
name: CD
on:
push:
branches: [ "main", "10-docs" ]
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build Docker image
run: docker build -t ghcr.io/${{ github.repository }}/backend:latest .
- name: Push Docker image
run: docker push ghcr.io/${{ github.repository }}/backend:latest
есть такой cd.yaml для github actions
но обрывается на Push Docker Image
с ошибкой
denied: installation not allowed to Create organization package
Error: Process completed with exit code 1.
подскажете пожалуйста что с этим делать
Ivan
Marsh
да
Marsh
и в гпт
Ivan
The default permission for the GITHUB_TOKEN automatically created for workflow runs by default is read only. Needs to be changed in the Settings > Actions > General section.
Marsh
мне скинули решение в другом чате, но всё равно спасибо
Max
Всем привет кто подскажет, нужно ли мне синхронизировать время докер контейнера с хостовой машиной ? Сейчас получается что у меня разное время.
в контейнере
date
Thu Dec  5 06:25:23 UTC 2024
хостовая машина
date
Thu Dec  5 09:26:01 AM MSK 2024
из-за этого возможно у меня не отрабатывает функция в коде. Если нужно синхронизировать, то подскажите как сделать ?
Александр
Max
Добавить это в docker compose верно ?
Александр
Мне требовалась синхронизация, ибо в контейнере крутится Графана и алерты приходили не в той таймзоне
Александр
Alexander
Max
ага у меня есть просто функция вычисляющая оставшиеся дни
days_left = (trial_end_date_aware - now_aware).days
if days_left == 1: # Оповещаем за день до окончания
вот из-за того что не бьется время нет отправки
Max
Georgy
Махмуд
grep не хватает?
мне нужно посмотреть вложенную структуру неизвестной глубины
научи как это делать?
количество отступов что ли грепать?
Georgy
Махмуд
Georgy
Georgy
не в тот чят, поправил
grep -A 10 -E "upstreams|services" файл.yaml | grep "ssl_protocols"
Georgy
так еще
Дима
Всем привет, кто подскажет как сделать так, чтобы jenkins при тестировании видел мою тестовую бд:
networks:
test-mongo-db-net:
external: true
services:
test_mongo:
image: mongo
restart: always
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: root
ports:
- 27018:27017
networks:
- test-mongo-db-net
jenkins:
image: jenkins/jenkins:lts
container_name: jenkins
hostname: jenkins
privileged: true
user: root
networks:
- proxy-net
- test-mongo-db-net
ports:
- 50000:50000
volumes:
- ./volumes/jenkins:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock
В Jenkins выходит вот такая ошибка при попытке подключения к БД:
E pymongo.errors.ServerSelectionTimeoutError: 127.0.0.1:27017: [Errno 111] Connection refused (configured timeouts: socketTimeoutMS: 20000.0ms, connectTimeoutMS: 20000.0ms), Timeout: 30s, Topology Description: <TopologyDescription id: 6755acf8f8a21d6615d1f7f8, topology_type: Unknown, servers: [<ServerDescription ('127.0.0.1', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('127.0.0.1:27017: [Errno 111] Connection refused (configured timeouts: socketTimeoutMS: 20000.0ms, connectTimeoutMS: 20000.0ms)')>]>
Дима
Два кода выше находятся в разных docker-compose.yml
Alexander
Дима
Для тестирования я использую pytest, вот кусок из файла conftest.py:
@pytest.fixture(scope="session")
def test_db():
test_mongo_connection_url = "mongodb://root:root@test_mongo:27017/?authSource=admin&retryWrites=true&w=majority"
test_mongodb_client = initiate_database(test_mongo_connection_url)
yield test_mongodb_client
test_mongodb_client.close()
Alexander
kai
Всем доброго времени суток
#windows
Делаю dev-контейнеры. Для них хотелось бы запускать код под текущим пользователем — чтобы работать максимально бесшовно
С unix-like всё изячно — --user=$(id -u):$(id -g)
Что делать с windows? Что там должно быть?
Mars
kai
wsl2 юзать не варик? 😃
C WSL2 всё работает как в обычном unix
Однако WSL как таковой очень проблемен — он работает немного не везде. Точных причин не знаю — у меня нет машин с виндой для тестов
Поэтому хотелось бы получить ответ на мой изначальный вопрос
Alexander
Дима
Alexander
Как решу обязательно скажу)
А еще попробуйте строку подключения такого вида
mongodb://root:root@test_mongo:27017/name_db?authSource=admin&retryWrites=true&w=majority
Дима
Пробовал, не помогло
melboyscout
Пробовал, не помогло
В разньіх компоузах по имени общаться не будет.
Вместо mongo_test поставте ip хоста
melboyscout
Всем привет, кто подскажет как сделать так, чтобы jenkins при тестировании видел мою тестовую бд:
networks:
test-mongo-db-net:
external: true
services:
test_mongo:
image: mongo
restart: always
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: root
ports:
- 27018:27017
networks:
- test-mongo-db-net
jenkins:
image: jenkins/jenkins:lts
container_name: jenkins
hostname: jenkins
privileged: true
user: root
networks:
- proxy-net
- test-mongo-db-net
ports:
- 50000:50000
volumes:
- ./volumes/jenkins:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock
В Jenkins выходит вот такая ошибка при попытке подключения к БД:
E pymongo.errors.ServerSelectionTimeoutError: 127.0.0.1:27017: [Errno 111] Connection refused (configured timeouts: socketTimeoutMS: 20000.0ms, connectTimeoutMS: 20000.0ms), Timeout: 30s, Topology Description: <TopologyDescription id: 6755acf8f8a21d6615d1f7f8, topology_type: Unknown, servers: [<ServerDescription ('127.0.0.1', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('127.0.0.1:27017: [Errno 111] Connection refused (configured timeouts: socketTimeoutMS: 20000.0ms, connectTimeoutMS: 20000.0ms)')>]>
127.0.0.1 тут не пойдет - локалхост у каждого контейнера тоже свой. и дженкинс не находит его у себя
Порт монги прокинут на хост, поєтому можна по ІР хоста и порт соответственно 27018
Или использовать в компоузах директиву extra_hosts
Максим
Вадим
Но вот в другом месте,
напрямую запущены nginx и php-fpm
в там для базы указываю хост localhost, но пишется ошибка
SQLSTATE[HY000] [2002] No such file or directory"
Вадим
как мне это поправить, код приложения находится не внутри докера, в внешне лежит
Alexander
Вадим
Да
Вадим
через phpmyadmin сижу в ней
Вадим
Вадим
А как пытаетесь подключить php?
string(44) "mysql:host=localhost;port=3306;dbname=agency"
string(48) "SQLSTATE[HY000] [2002] No such file or directory"
первая это строка dsn, вторая это ошибка
приложение крутится не в докере в внеше
Вадим
там только база в докере у меня
Вадим
хочу вот подружить
Alexander
Смотреть как-то приложение надо тогда логи или что оно дает. Ибо если доступно из php myadmin то вроде проблем нет
Вадим
ну или это из-за того что у меня докер сетевой мост не создал
Вадим
Alexander
Вадим
Ну внутри докера одно приложение получилось, тот phpmyadmin, но почему я из php который нативно установлен не могу подключиться, это странно
Вадим
В качестве хост указываю localhost а в ответ он мне пишет no such file
Alexander
Вадим
Alexander
Нет, он тоже через докер
А попробовать заведомо рабочее приложение с локалки подключить к Mysql как говорится проверить
Вадим
Вадим
a-lab
Привет, подскажите, пожалуйста, если я запускаю контейнер docker и даю к нему root случайному пользователю. Легко ли этому пользователю похакать этот контейнер Docker и выйти в основную систему?
Или Docker крепкий? :)
То есть насколько безопасно давать root доступ от контейнера docker? Я бы хотел чтобы пользователь делал в своём контейнере docker всё что ему угодно, но он не мог никак повредить родительской системе.
Это возможно?
Спасибо за ответ.
Владимир
a-lab
a-lab
a-lab
Извините, пожалуйста, за off topic.
Тогда у меня есть вопрос:
Мне нужно решение типа docker, чтобы сделать ограниченный контейнер для любого человека (возможно, этот пользователь будет иметь плохие намерения).
Контейнер, который был бы ограничен по CPU, по RAM, по объёму HDD, но у которого был бы доступ root в этом контейнере.
Это что-то типа виртуализации, но попроще, если у меня на host'е Ubuntu, то и в контейнере тоже Ubuntu.
Подскажите, пожалуйста, такое решение.
Или чат в telegram, где можно задать этот вопрос.
Спасибо большое за ответ.
Alexey
поднимите контейнизацию, где будете ограничивать по ресурсам, и давайте доступ в эти контейнеры, и пусть поднимают свой докер,
только не стоит давать рут права ни кому, и запускать докер от рута, если вы только не самоубийца ))