Dan
на деньги купим дебаркадер и наконец-то отправимся на Гаити
Илья
а ты прям у каждого из 3000 участников спрашивал?)
Илья
Никита
смотря какие ответы нужны
Evgeniy
Он с вопросами 24/7 помогает Кидайте ему вопросы по докеру он поможет
Влад
всем ку, пытаюсь установить сертификат cerbot на свой ubuntu сервер командой "sudo certbot --nginx -d example.com " но получаю следующею ошибку "Traceback (most recent call last): File "/usr/bin/certbot", line 11, in <module> load_entry_point('certbot==0.40.0', 'console_scripts', 'certbot')() File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 490, in load_entry_point return get_distribution(dist).load_entry_point(group, name) File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 2854, in load_entry_point return ep.load() File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 2445, in load return self.resolve() File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 2451, in resolve module = import(self.module_name, fromlist=['name'], level=0) File "/usr/lib/python3/dist-packages/certbot/main.py", line 10, in <module> import josepy as jose File "/usr/lib/python3/dist-packages/josepy/__init__.py", line 41, in <module> from josepy.interfaces import JSONDeSerializable File "/usr/lib/python3/dist-packages/josepy/interfaces.py", line 7, in <module > from josepy import errors, util File "/usr/lib/python3/dist-packages/josepy/util.py", line 7, in <module> import OpenSSL File "/usr/lib/python3/dist-packages/OpenSSL/__init__.py", line 8, in <module> from OpenSSL import crypto, SSL File "/usr/lib/python3/dist-packages/OpenSSL/crypto.py", line 1553, in <module > class X509StoreFlags(object): File "/usr/lib/python3/dist-packages/OpenSSL/crypto.py", line 1573, in X509Sto reFlags CB_ISSUER_CHECK = _lib.X509_V_FLAG_CB_ISSUER_CHECK AttributeError: module 'lib' has no attribute 'X509_V_FLAG_CB_ISSUER_CHECK'" что я делаю не так ?
Влад
(я если что заменить на свой сертификат в команде)
Влад
для этой утилиты phyton чтоли нужно установить ? или как ?
qesorabi
для этой утилиты phyton чтоли нужно установить ? или как ?
Нужно установить этот пакет python3-certbot-nginx
Влад
но phyton не установлен, мне его установить чтоли надо ?
Влад
а статте просто не говорилось что нужно установить phyton
Влад
😑
Илья
всем ку, пытаюсь установить сертификат cerbot на свой ubuntu сервер командой "sudo certbot --nginx -d example.com " но получаю следующею ошибку "Traceback (most recent call last): File "/usr/bin/certbot", line 11, in <module> load_entry_point('certbot==0.40.0', 'console_scripts', 'certbot')() File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 490, in load_entry_point return get_distribution(dist).load_entry_point(group, name) File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 2854, in load_entry_point return ep.load() File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 2445, in load return self.resolve() File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 2451, in resolve module = import(self.module_name, fromlist=['name'], level=0) File "/usr/lib/python3/dist-packages/certbot/main.py", line 10, in <module> import josepy as jose File "/usr/lib/python3/dist-packages/josepy/__init__.py", line 41, in <module> from josepy.interfaces import JSONDeSerializable File "/usr/lib/python3/dist-packages/josepy/interfaces.py", line 7, in <module > from josepy import errors, util File "/usr/lib/python3/dist-packages/josepy/util.py", line 7, in <module> import OpenSSL File "/usr/lib/python3/dist-packages/OpenSSL/__init__.py", line 8, in <module> from OpenSSL import crypto, SSL File "/usr/lib/python3/dist-packages/OpenSSL/crypto.py", line 1553, in <module > class X509StoreFlags(object): File "/usr/lib/python3/dist-packages/OpenSSL/crypto.py", line 1573, in X509Sto reFlags CB_ISSUER_CHECK = _lib.X509_V_FLAG_CB_ISSUER_CHECK AttributeError: module 'lib' has no attribute 'X509_V_FLAG_CB_ISSUER_CHECK'" что я делаю не так ?
А ты гуглил ошибку? Там предлагают обновить версию PyOpenSSL. Пробовал?
qesorabi
но phyton не установлен, мне его установить чтоли надо ?
Это все происходит в контейнере? Да, нужно установить. Как без питона вы собрались работать с питоном?
Илья
Это все происходит в контейнере? Да, нужно установить. Как без питона вы собрались работать с питоном?
Мне чет интересно стало. А как оно вообще смогло питоновскую ошибку выдать, если питон не стоит
Влад
python3 --version у меня установлен "Python 3.8.10"
qesorabi
python3 --version у меня установлен "Python 3.8.10"
Вы certbot откуда запускаете? С Ubuntu цельной или с имеджа убунты в докере?
qesorabi
python3 --version у меня установлен "Python 3.8.10"
А это вы взяли со своей системы или с контейнера?
Влад
я по следующей статте все выполнял https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-20-04-ru
Влад
там не нужно было заходить в контейнер и тд..
qesorabi
там не нужно было заходить в контейнер и тд..
Да, но это для чистой убунты, а ты делаешь в докере.
qesorabi
системы
Вот пример того, как должен быть оформлен конфиг в докер для твоей задачи, там несколько вариаций. https://github.com/JonasAlfredsson/docker-nginx-certbot
qesorabi
там не нужно было заходить в контейнер и тд..
Либо же можешь адаптировать пример digitalocean или с доки nginx. https://www.nginx.com/blog/using-free-ssltls-certificates-from-lets-encrypt-with-nginx/
Влад
Вот пример того, как должен быть оформлен конфиг в докер для твоей задачи, там несколько вариаций. https://github.com/JonasAlfredsson/docker-nginx-certbot
так я же не в docker контейнере выполняю, какая ему разница этому cerbot чистая или не чистая у меня ubuntu ?
qesorabi
вот отцуда "root@v888237757:~#"
Это докер контейнер, там урезанная убунта, вот в чем прикол
qesorabi
а, понял
Ты пытаешься использовать контейнер как вм что-ли?
qesorabi
что такое "вм" ?
Виртуальная машина
Влад
Виртуальная машина
нет, я просто прописал команду в ubuntu сервере, я использую docker-compose для создания контейнеров
Влад
я умею запускать сайт с сертификатом, я простто хочу получить файлы к моему сертификату через cerbot
qesorabi
верно
Докер обязателен?
Влад
Докер обязателен?
конечно, у меня ведь на нем проекты
qesorabi
конечно, у меня ведь на нем проекты
В таком случае либо те два варианта, что выше со ссылками, либо выпусти сертификат на основной ОС, а в контейнер с nginx просто приложи его через volumes.
Влад
😅
qesorabi
можо пример с реализацией второго варианта ?
https://stackoverflow.com/questions/51399883/adding-ssl-certs-to-nginx-docker-container
Solyar
конечно, у меня ведь на нем проекты
https://github.com/bubelov/traefik-letsencrypt-compose
Александр
Ребят, всем привет! У меня вопрос, бест-решение для которого не получается найти, хотел бы посоветоваться с вами. Предположим мы используем driver gelf для отправки логов как-то так: logging: driver: "gelf" options: gelf-address: "udp://127.0.0.1:12201" tag: "{{.Name}}/{{.ID}}" Однако делаем это в Swarm. Обратите внимание на udp://127.0.0.1:12201 это продиктовано тем, что Graylog который собирает логи находится в том же стеке, и увы прописать host типа как udp://graylog_host:12201 не получится, поскольку здесь на этом уровне не работает dns контейнеров. Не получится и открыть порт 12201 непублично. Docker прокинет его наружу. Соответственно без внешнего Firewall или Security Groups всё решение выглядит супер костыльно. И у меня вопрос. Есть среди вас те кто решал эту проблему? Идеально я вижу два пути решения: 1. заставить gelf работать внутри оверлейновй сети 2. ок, попросить docker swarm открыть порт на хостах таким образом чтобы это работало как внешний порт, только для хостов Swarm-а Заранее спасибо.
Delakey
Ребят, всем привет! У меня вопрос, бест-решение для которого не получается найти, хотел бы посоветоваться с вами. Предположим мы используем driver gelf для отправки логов как-то так: logging: driver: "gelf" options: gelf-address: "udp://127.0.0.1:12201" tag: "{{.Name}}/{{.ID}}" Однако делаем это в Swarm. Обратите внимание на udp://127.0.0.1:12201 это продиктовано тем, что Graylog который собирает логи находится в том же стеке, и увы прописать host типа как udp://graylog_host:12201 не получится, поскольку здесь на этом уровне не работает dns контейнеров. Не получится и открыть порт 12201 непублично. Docker прокинет его наружу. Соответственно без внешнего Firewall или Security Groups всё решение выглядит супер костыльно. И у меня вопрос. Есть среди вас те кто решал эту проблему? Идеально я вижу два пути решения: 1. заставить gelf работать внутри оверлейновй сети 2. ок, попросить docker swarm открыть порт на хостах таким образом чтобы это работало как внешний порт, только для хостов Swarm-а Заранее спасибо.
Открыть порт с указанием ip 127.0.0.1
Никита
ребят, подскажите пожалуйста, почему нгинкс отказывается проксировать с http на https? я как только не гуглил, надеюсь на вашу помощь здесь
Никита
он выбивает на http://web:80, а это поднятый из докера гитлаб, у которого порты не выведены
Никита
с https такой проблемы нет
Александр
Открыть порт с указанием ip 127.0.0.1
Как я понимаю, это не работает. Нашел кучу ишью на эту тему, что в Swarm порт откроется публично. Он не умеет так. Без Swarm да. Работает.
Max
ребят, подскажите пожалуйста, почему нгинкс отказывается проксировать с http на https? я как только не гуглил, надеюсь на вашу помощь здесь
попробуй добавить в блок location / эти строчки proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme;
Max
потом перезапусти nginx
Max
не поможет смотри логи
Konstantin
Здравствуйте! У меня возникает такая странная проблема в докере. Запускаю стоковый образ с питоном: docker run -it python:3.11-slim bash Внутри пытаюсь обновить версию pip: pip install -U -vvv pip Он пытается снести старый pip версии 23.2.1, для чего переименовывает директорию /usr/local/lib/python3.11/site-packages/pip-23.2.1.dist-info/ в /usr/local/lib/python3.11/site-packages/~ip-23.2.1.dist-info. И валится с ошибкой OSError: [Errno 18] Invalid cross-device link. Ни у кого такой проблемы нету. Попробовал для чистоты эксперимента загрузить такую же убунту, что у меня стоит с флешки, поставить на ней докер той же версии, и там все работает. Попробовал снести докер и переставить заново через apt. Не помогло. Если что, докер версии 24.0.7, ставился из дистрибутива docker-ce. Есть какие-то мысли, что я делаю не так?
Konstantin
Раньше вроде бы все работало, а потом перестало.
Konstantin
Докер рутовый ?
Да. Пробовал и через sudo docker run -it python:3.11-slim bash
Konstantin
Та же картина
Ilya
тебе внутри контейнера надо sudo сделать
Konstantin
тебе внутри контейнера надо sudo сделать
Внутри контейнера все и так под рутом.
Ilya
Внутри контейнера все и так под рутом.
а почему ты не хочешь докерфайл сделать и в нём обновить пип?
Konstantin
а почему ты не хочешь докерфайл сделать и в нём обновить пип?
А с этого и начиналось. У меня докерфайл, в нем пытаюсь обновить pip, вылазит точно такая же проблема. Это я проблему изолировал, чтобы было проще описать и воспроизвести.
Ilya
а понял
Ilya
возможно потому что образ слим
Konstantin
Причем я припоминаю, что раньше эти докерфайлы локально собираются, и у других разрабов собираются, и в пайплайне CI/CD собираются, и даже на чистой убунте с флешки собираются.
Ilya
тестани не на слиме хз
Konstantin
Так не, я ж писал выше, на чистой убунте на том же базовом образе все работает. Как будто я у себя локально докер сломал, но КАК?
Ilya
а ты на какой ос собраешь?
Konstantin
ubuntu jammy (22.04)
Ilya
реально странное
Goryyn
Привет народ. Кто может объяснить, пожалуйста, почему Docker Desktop + WSL ubuntu таааак медленно рабоают?
Konstantin
pip3 install и вперед
У меня в докере проблема, а не в pip. Там и другие похожие проблемы возникают (например, если делать poetry update). Просто это хороший способ проблему изолировать и воспроизвести.
Konstantin
И в логах докера тишина ?
Konstantin
А шо в дмесге ?
На хосте? Посмотрю