配置centos开发环境

文章来源https://www.kancloud.cn/carol/note/845022

拉取最新的centos镜像

docker pull centos

创建env容器并且启用systemd(可以使用systemd)

docker run -d --privileged=true --name env centos /usr/sbin/init

进入容器

docker exec -it env /bin/bash

设置时区

timedatectl set-timezone Asia/Shanghai

更新软件包

yum update -y

安装epel源

yum install -y epel-release

安装wget等

yum install -y wget

创建软件包存放目录

mkdir ~/soft-source

安装nginx

cd ~/soft-source
wget http://nginx.org/download/nginx-1.15.5.tar.gz
tar -zxf nginx-1.15.5.tar.gz
cd nginx-1.15.5
yum install -y gcc pcre pcre-devel openssl openssl-devel
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_realip_module --with-pcre
make && make install

修改nginx默认配置

mkdir /usr/local/nginx/conf/vhost
echo '' > /usr/local/nginx/conf/nginx.conf
vi /usr/local/nginx/conf/nginx.conf


worker_processes 1;

events {
worker_connections 1024;
}

http {
include mime.types;
default_type application/octet-stream;

sendfile        on;
tcp_nopush      on;
tcp_nodelay     on;

keepalive_timeout  65;

server_tokens   off;

gzip  on;

include vhost/*.conf;

}

安装nginx服务

vi /usr/lib/systemd/system/nginx.service

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target


systemctl enable nginx

安装php

cd ~/soft-source
wget http://cn2.php.net/distributions/php-7.2.11.tar.gz
tar -zxf php-7.2.11.tar.gz
cd php-7.2.11
yum install -y gcc gcc-c++ systemd-devel libxml2 libxml2-devel curl curl-devel bzip2 bzip2-devel libjpeg-turbo libjpeg-turbo-devel libpng libpng-devel freetype freetype-devel libicu libicu-devel openssl openssl-devel pcre pcre-devel
./configure --prefix=/usr/local/php --with-bz2 --enable-zip --with-zlib --with-mhash --with-openssl --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-calendar --with-gettext --enable-mbstring --enable-exif --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-bcmath --with-curl --enable-ftp --enable-sockets --enable-libxml --enable-fpm --enable-pcntl --enable-soap --enable-opcache --with-xmlrpc --enable-intl --enable-shmop --with-fpm-systemd
make && make install
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
cp ~/soft-source/php-7.2.11/sapi/fpm/php-fpm.service /usr/lib/systemd/system/php-fpm.service
cp ~/soft-source/php-7.2.11/php.ini-production /usr/local/php/lib/php.ini
systemctl enable php-fpm

安装php扩展

yum install -y autoconf
/usr/local/php/bin/pecl channel-update pecl.php.net

/usr/local/php/bin/pecl install APCu

yum install -y libmemcached-devel
/usr/local/php/bin/pecl install memcached

/usr/local/php/bin/pecl install igbinary

/usr/local/php/bin/pecl install redis

yum install -y hiredis-devel libnghttp2-devel
/usr/local/php/bin/pecl install swoole

yum install -y GraphicsMagick-devel
/usr/local/php/bin/pecl install channel://pecl.php.net/gmagick-2.0.5RC1

/usr/local/php/bin/pecl install yaf

/usr/local/php/bin/pecl install mongodb

vi /usr/local/php/lib/php.ini

extension=apcu
extension=memcached
extension=igbinary
extension=redis
extension=swoole
extension=gmagick
extension=yaf
extension=mongodb


安装mysql

cd ~/soft-source/
wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
yum localinstall mysql80-community-release-el7-1.noarch.rpm
yum install -y mysql-community-server

systemctl enable mysqld
systemctl start mysqld
grep 'temporary password' /var/log/mysqld.log
mysql -uroot -p


mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '!Aa123456';
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '!Aa123456';


vi /etc/my.cnf

default-authentication-plugin=mysql_native_password

systemctl restart mysqld

mysql -uroot -p

mysql> CREATE USER 'root'@'%' IDENTIFIED BY '!Aa123456';
mysql> GRANT ALL PRIVILEGES ON . TO 'root'@'%' WITH GRANT OPTION;


安装redis

yum install -y redis
systemctl enable redis
more /etc/redis.conf

安装memcached

yum install -y memcached
systemctl enable memcached
more /etc/sysconfig/memcached

安装momgodb

vi /etc/yum.repos.d/mongodb-org-4.2.repo

[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc


yum install -y mongodb-org
systemctl enable mongod
more /etc/mongod.conf

你可能感兴趣的:(配置centos开发环境)