Премини към съдържанието
  • Добре дошли!

    Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

    Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

     

Местене на имидж на Docker с Mariadb и папка с бази данни


Препоръчан отговор


Здравейте, ползвах този урок https://rtfm.co.ua/docker-ubuntu-i-mariadb-v-kontejnere/

Проблема дойде когато преместих имиджа на нова машина заедно с папката с базите данни в случая /docker/vm/ubuntu/mariadb/data/

Mariadb изобщо не тръгва на новата машина иначе всичко съм направил както е в урока само съм преместил имиджа и папката от старата машина както се мести имидж в Docker

Линк към този отговор
Сподели в други сайтове

Кое точно не тръгва? Съшата версия на server-a ли ползваш?
Иначе упражнението е лесно, просто първо даваш stop на mysql-a от едната машина ( за да sync-не всичко), копираш данните от volume и на другата машина пускаш същия image със volume, което е било на старата машина.
Какво ще рече, че не стартира? docker logs какво вика?

Линк към този отговор
Сподели в други сайтове
преди 52 минути, borovaka написа:

Кое точно не тръгва? Съшата версия на server-a ли ползваш?
Иначе упражнението е лесно, просто първо даваш stop на mysql-a от едната машина ( за да sync-не всичко), копираш данните от volume и на другата машина пускаш същия image със volume, което е било на старата машина.
Какво ще рече, че не стартира? docker logs какво вика?

Да ама това в урока не прилича на volume просто си прави папка и си монтира /var/lib/mysql  никъде не създава volume :(

Ето виж накрая как го задава

docker run --name mariadb_db1 -v /docker/vm/ubuntu/mariadb/data:/var/lib/mysql -d -p 3306:3306 setevoy/db_server_1 /usr/bin/mysqld_safe

 

Линк към този отговор
Сподели в други сайтове

Всичко опитах не ще и не ще

:( :(

Линк към този отговор
Сподели в други сайтове
преди 8 часа, petie1 написа:

Всичко опитах не ще и не ще

:( :(

Я обясни малко по-подробно в момента каква е ситуацията при теб? Как си пуснал контейнера и къде точно искаш да преместиш данните?


Линк към този отговор
Сподели в други сайтове
преди 4 часа, borovaka написа:

Я обясни малко по-подробно в момента каква е ситуацията при теб? Как си пуснал контейнера и къде точно искаш да преместиш данните?

 

Здравейте, направих си база данни s Docker монтирах я с

[code]

-v /home/terminalov/database:/var/lib/mysql

[/code]

направих си нов имидж дотук всичко добре но като реших да я местя ударих дръвчето не се копира и не се монтира на другата машина макар че и там имам същата структура на директориите, изобщо не тръгва Mariadb... Опитах и с

[code]

docker volume create terminalov

-v terminalov:/var/lib/mysql
[/code]

 

Тука се монтира но като създам нова база и реша да я използвам ми казва че нямам права за ползване на базата данни..

Контейнера го създадох на другата машина с

[code]

docker run --name database -v /home/terminalov/database/:/var/lib/mysql -i -t -p 3306:3306 terminalov/newimage

[/code]

както е на старата и вече си пиша

[code]

service mariadb start

[/code]

и не тръгва...

Опитах и с volume

[code]

docker run --name database -v terminalov:/var/lib/mysql -i -t -p 3306:3306 terminalov/newimage

[/code]

Mariadb тръгва но като създам база  ми казва че не мога да я ползвам :(

Линк към този отговор
Сподели в други сайтове

Хмм възможно е да има проблеми с правата върху файловете.
По принцип трябва да прехвърлиш съдържанието на /home/terminalov/database във /var/lib/docker/volumes/ (където се намира terminalov).
Най-лесно и безболезнено ще ти е обаче да си ползваш mysqldump.
Пускаш си контейнера от който ще експортваш: docker run --name database -v /home/terminalov/database/:/var/lib/mysql -i -t -p 3306:3306 terminalov/newimage
инсталираш си mysql-client на хост машината и му даваш mysqldump --host 127.0.0.1 -u root -p --all-databases > databases-dump.sql

После спираш контейнера и пускаш другия във който ще импортваш: docker run --name database -v terminalov:/var/lib/mysql -i -t -p 3306:3306 terminalov/newimage
И от хост машината ти mysql -u root -p < databases-dump.sql

Линк към този отговор
Сподели в други сайтове

Мерси, оправих го, изглежда е имало проблем с инсталацията на Mariadb, ето как стана:

Създадох контейнер с Дебиан Бъстър инсталирах Mariadb направих потребителите root и terminalov опаковах създадох нов контейнер с монтиран volumes опаковах втория контейнер и го метнах на другата машина където създадох контейнер с volume като на старата машина и работата стана

Линк към този отговор
Сподели в други сайтове

Добавете отговор

Можете да публикувате отговор сега и да се регистрирате по-късно. Ако имате регистрация, влезте в профила си за да публикувате от него.

Гост
Напишете отговор в тази тема...

×   Вмъкнахте текст, който съдържа форматиране.   Премахни форматирането на текста

  Разрешени са само 75 емотикони.

×   Съдържанието от линка беше вградено автоматично.   Премахни съдържанието и покажи само линк

×   Съдържанието, което сте написали преди беше възстановено..   Изтрий всичко

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Добави ново...

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите Условия за ползване