打算构造一个环境较全的linux环境,所以在本地弄了个docker。然后pull了一个centos的镜像,并打算在此镜像的基本上,构建适合自己的镜像。但在使用时,发现了各种问题,还是费了一些功夫。原因是centos7有些特殊,和我之前使用的linux在命令、安装软件等方式都不太一样。
1. 安装mysql
使用命令 rpm -qa | grep mysql 查看本地是否安装有mysql,发现未安装。使用yum install -y mysql-server,发现并没有mysql的安装源。因为centos-7默认是Mariadb,所以执行以下命令只是更新Mariadb数据库。按如下步骤,可成功安装mysql服务。
[root@localhost ~]# wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm [root@localhost ~]# sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm [root@localhost ~]# sudo yum install mysql-server
2. 进入docker容器
使用命令service mysqld start启动的时候,服务器启动不起来,提示:
Failed to get D-Bus connection: Operation not permitted
查看centos版本后发现,是centos 7.
[root@b2ca5610d3da /]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core)
解决办法:
docker run -d -e “container=docker” –-privileged=true -v /sys/fs/cgroup:/sys/fs/cgroup –-name xxxx /usr/sbin/init
其中xxxx是docker的镜像名。查看启动情况。
[root@iZwz91s6lw79velxoim303Z /]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 78080535f112 centos "/usr/sbin/init" 4 minutes ago Up 4 minutes centos7
进入我们的docker容器。
docker exec -it 78080535f112 /bin/bash
3. 启动mysql服务
systemctl start mysqld
ps aux|grep mysql 查看mysql服务器的启动情况
mysql -u root -p 连上mysql服务器