对于 Moodle 项目,我想提供一个预装了 Ubuntu 20.04 和 Mysql 5.7 的 Vagrant 盒子。
所以在配置文件中我取消了
apt-get install -y mysql-server to '# apt-get install -y mysql-server (所以没有安装 mysql)
可以通过以下方式安装 Mysql 5.7:
sudo wget -P /opt https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb
sudo dpkg -i /opt/mysql-apt-config_0.8.12-1_all.deb
apt-get update
apt-get install -y mysql-community-client
apt-get install -y mysql-client=5.7.36-1ubuntu18.04
apt-get install -y mysql-community-server=5.7.36-1ubuntu18.04
apt-get install -y mysql-server=5.7.36-1ubuntu18.04
这个过程我想自动化,例如使用 povision 文件。重点是
sudo dpkg -i /opt/mysql-apt-config_0.8.12-1_all.deb
打开一个 gui,允许选择 mysql 5.7 等。为了自动化,我尝试使用 debconf 变量。所以我在配置文件中添加了以下内容:
> export DEBIAN_FRONTEND=noninteractive
> sudo debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/repo-codename select bionic'
> sudo debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/repo-distro select ubuntu'
> sudo debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/repo-url string http://repo.mysql.com/apt/'
> sudo debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-preview select '
> sudo debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-product select Ok'
> sudo debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-server select mysql-5.7'
> sudo debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-tools select '
> sudo debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/unsupported-platform select abort'
但这从来没有奏效。
下一点是,那
apt-get install -y mysql-community-server=5.7.36-1ubuntu18.04
apt-get install -y mysql-server=5.7.36-1ubuntu18.04
还会打开一个需要设置 root 密码的 gui。在我尝试的外壳上:
> debconf-set-selections <<< 'mysql-community-server=5.7.36-1ubuntu18.04 mysql-community-server/root_password password 1234'
但是没有成功。
你能让我从这里开始,以便获得一个在预装 Ubuntu 20.04 下提供带有 mysql 5.7 的 vagrant box 的自动化过程吗?
非常感谢 !
最好的,
雷神