सेंटोस 7 के तहत, मैं समझता हूं कि हम आगे बढ़ रहे हैं mysql-server
कार्यान्वयन करने के लिए-संगत MariaDB. मैं एक डॉकर छवि का उपयोग कर रहा हूं centos:latest
, जो मुझे सेंटोस 7 के तत्वावधान में रखता है ।
mysqld_safe
अग्रभूमि में अवरुद्ध चलाता है । इससे यह आसान हो जाता है: मुझे बस 0 की आवश्यकता है) पैकेज स्थापित करें 1) रूट पासवर्ड बदलें और 2) एक सर्वर को भीतर से चलाएं Dockerfile
डॉकर प्रतिमान में, क्योंकि मुझे मारियाडीबी स्थापित करने में सक्षम होना चाहिए जैसे कि यह एक बैश स्क्रिप्ट में था । मैंने इसका उपयोग करने के विभिन्न तरीके खोजे हैं aptitude
उबंटू के तहत लेकिन अभी तक एक समान उत्तर नहीं मिला है yum
: मैं सेंटोस 7 पर मारियाडीबी को कैसे स्थापित, कॉन्फ़िगर और चला सकता हूं जैसे कि इसे बैश स्क्रिप्ट के माध्यम से स्थापित किया जा रहा था? mysql_secure_installation
एक टीटीई की आवश्यकता प्रतीत होती है ।
मैंने चलाने की कोशिश की है mysqladmin
पासवर्ड मैन्युअल रूप से कमांड करता है, लेकिन यह शिकायत करता है कि यह चल रहे माईएसक्यूएल इंस्टेंस से कनेक्ट नहीं हो सकता है । क्योंकि कंटेनरों को चरणों के बीच फेंक दिया जाता है, मेरा मानना है कि मुझे किसी तरह माईएसक्यूएल चलाने और उसी चरण में पासवर्ड बदलने की आवश्यकता है ।
मैंने स्थापित करने का प्रयास किया है initscripts
पैकेज मुझे हो जाता है /bin/service
लेकिन यह मुझे उपयोग करने के लिए पुनर्निर्देशित करने की कोशिश करता है systemctl start mariadb.service
, जो प्रयोग करने योग्य नहीं है क्योंकि डॉकर कंटेनरों को एक मिलता है fakesystemd
और नहीं systemd
. कोई विचार?
यहाँ मेरा वर्तमान डॉकरफाइल संस्करण है (इस एक में, एक कोशिश कर रहा है tail -f
प्रक्रिया को एक के रूप में जीवित रखने के लिए CMD
)
FROM centos:latestMAINTAINER Me (some@guy.com)RUN yum -y install wget epel-releaseRUN cd /usr/local/src && wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm && rpm -Uvh remi-*.rpm && rm remi-*.rpmRUN sed -i 's/enabled=0/enabled=1/' /etc/yum.repos.d/remi*.repoRUN cd /usr/local/src && wget http://apt.sw.be/redhat/el7/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm && rpm -Uvh rpmforge-*.rpm && rm rpmforge-*.rpmRUN rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txtRUN sed -i 's/enabled=0/enabled=1/' /etc/yum.repos.d/rpmforge*.repoRUN yum -y updateRUN yum -y upgrade# mysqlRUN yum -y install mariadb-serverRUN yum -y install initscriptsWORKDIR /usr#RUN echo "bind-address=0.0.0.0" >> /etc/my.cnfRUN /usr/bin/mysql_install_db --datadir="/var/lib/mysql" --user=mysqlRUN /usr/bin/mysqld_safe --datadir="/var/lib/mysql" --socket="/var/lib/mysql/mysql.sock" --user=mysql >/dev/null 2>&1 &RUN /usr/bin/mysqladmin -u root password SOMEPASSWORDCMD tail -f /var/log/mariadb/mariadb.logEXPOSE 3306
संबंधित:
- पटकथा स्थापित MySQL के Ubuntu पर
- https://askubuntu.com/questions/79257/how-do-i-install-mysql-without-a-password-prompt
- https://stackoverflow.com/questions/1202347/how-can-i-pass-a-password-from-a-bash-script-to-aptitude-for-installing-mysql
- https://stackoverflow.com/questions/7739645/install-mysql-on-ubuntu-without-password-prompt