A.D.🈴
Как такое может быть?
A.D.🈴
Так, разобрался.
A.D.🈴
Оно сертификат устанавливает ваще в корень-корень куда-то. :)
A.D.🈴
I have no name!@985715ca558c:/var/www/php$ mkdir /.symfony
mkdir: cannot create directory '/.symfony': Permission denied
A.D.🈴
если руками ее создавать - то такая же история.
A.D.🈴
а судо у меня нет, :) надо устанавливать... а еще пароль как-то узнать к руту. :) Че ж так сложно-то..
George
George
Переписываешь скрипт, который при старте контейнера
George
Сам контейнер от рута
George
А в скрипте делаешь переход в пользователя, которого ты передал при создании контейнера (не образа!)
George
Типа docker run -e USER_ID=$(id -u) my_image
A.D.🈴
Так у меня и прописано. :)
Ну я через докер-компоуз работаю.
Короче, у юзера нет хоум диры, отсюда и косяк.
Пойду погуглю, как хоум организовать.
Aleksey
Anonymous
Aleksey
Похоже вообще не создавал
Тогда заведи в Докерфайле создание юзера так же как в линухе сделал бы, только с UID/GID аккуратнее если примаунтишь внешнюю папку то все проверки по ID если будет отличаться от того, под каким запускаешь, колдунство не сработает
George
George
не механизмом докера юзера переключать (флаг -u), а самому
Anonymous
Aleksey
Aleksey
указываешь что тебе доставить, что изменить и юзера заодно слздаешь
Anonymous
Суть в том,что образ не должен знать с каким юзером ему работать надо будет
Aleksey
RUN
WORKDIR
Aleksey
Aleksey
A.D.🈴
Добавил в Докерфайл вот это:
A.D.🈴
RUN useradd -rm -d /home/deralsem -s /bin/bash -g root -G sudo -u 1000 deralsem
USER deralsem
WORKDIR /home/deralsem
A.D.🈴
Ща создастся - посмотрю, че получится.
A.D.🈴
уже лучше.
A.D.🈴
A.D.🈴
по крайней мере, запускается с таким же юзером.
A.D.🈴
сертификат можно из-под рута установить, ща остальное попробую.
A.D.🈴
RUN useradd -rm -d /home/deralsem -s /bin/bash -g root -G sudo -u 1000 deralsem
USER deralsem
WORKDIR /home/deralsem
Так, эта часть заработала, всё нормально. Теперь, правда, в рута попасть не могу. :)
Но, в принципе, пока он нужен только для установки сертификата, возможно, обойдусь без него. Ща в докерфайл строчку добавлю, посмотрю, че будет.
George
Так, эта часть заработала, всё нормально. Теперь, правда, в рута попасть не могу. :)
Но, в принципе, пока он нужен только для установки сертификата, возможно, обойдусь без него. Ща в докерфайл строчку добавлю, посмотрю, че будет.
ты можешь сертификат передавать через ENV
A.D.🈴
Обошелся без судо. ПОка вроде рут нужен только для установки сертификата, докер-компоуз -ю рут, устанавливаем серт, а дальше уже работаем под обычным юзером.
Спасибо всем за помощь.
Anonymous
A.D.🈴
В прод буду через нжинкс выезжать.
A.D.🈴
*планирую :)
Anonymous
A.D.🈴
A.D.🈴
Че-т симфони постгрес не цепляет, хотя адмайнер вроде видел БД.
A.D.🈴
A.D.🈴
A.D.🈴
DATABASE_URL="postgresql://main:main@localhost:5432/main?serverVersion=13&charset=utf8"
A.D.🈴
А нет, адмайнер тоже не видит. Че-т сломалось.
George
George
почыеу локалхост
A.D.🈴
почыеу локалхост
Да уже разобрался, надо ип контейнера указывать. Но это че-т... такое себе. :)
George
A.D.🈴
О как. Спасибо, не знал.
George
Именно
George
Знай свои инструменты !
A.D.🈴
Учусь. :)
Vitaliy
Это же ide которая вне контейнера?
George
Vitaliy
Ещё раз,у тебя адмайнер не в контейнере запущен, и он коннектится по имени сервиса в докере, а аналогичная схема с пхпсторм не работает? Мне почему-то казалось что адмайнер у тебя тоже в докере
George
George
и локалхост: порт коннектиться
Anonymous
или каким-нибудь https://hub.docker.com/r/itsziget/hosts-gen/ генерить /etc/hosts
George
Опять венгры, что ли ?
A.D.🈴
A.D.🈴
Но оно так не работает. :(
George
А зачем постгрес пересобираешь ?
A.D.🈴
А зачем постгрес пересобираешь ?
Вообще, не пересобираю, первоначально образ был, а потом я какие-то опции пробовал, потом че-т стирал, че-т дополнял, щас в Докерфайле вот так:
A.D.🈴
Я, конечно, щас айпишник докера прописал, все работает. Но че-т это не самый правильный способ. :)
George
Смысла так делать нет
George
Берёшь оф образ и тупо конфиг через bind mount подкладываешь
A.D.🈴
А, логично.
A.D.🈴
На самом деле, в конфиге только одна директора - listen address "*"
George
Либо - если опций немного - их все можно передать через аргументы команды
A.D.🈴
Но че-т не работает все равно.
George
Ну, мы просто в докер компоуз это описали
A.D.🈴
George
Там был нюанс только с [] синтаксисом и разбивкой по элементам
George