閱讀370 返回首頁    go 京東網上商城


CentOS Core2.0 安裝教程

************************* Core 2.0.2 *******************************
//1、安裝dotnet環境
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo sh -c 'echo -e "[packages-microsoft-com-prod]\nname=packages-microsoft-com-prod \nbaseurl= https://packages.microsoft.com/yumrepos/microsoft-rhel7.3-prod\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/dotnetdev.repo'
//2、安裝.NET SDK
sudo yum update
sudo yum install libunwind libicu
sudo yum install dotnet-sdk-2.0.2
//3、驗證dotnet環境
dotnet --info

****************************** MySQL *****************************
//1、下載MySQL
wget https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm
rpm -ivh mysql57-community-release-el7-11.noarch.rpm
yum install mysql-community-server
//2、重啟MySQL服務 systemctl start mysqld.service
systemctl restart mysqld.service
//3、設置開機啟動
systemctl enable mysqld
systemctl daemon-reload
//4、修改root本地登錄密碼
//mysql安裝完成之後,在/var/log/mysqld.log文件中給root生成了一個臨時的默認密碼。
//在這裏A temporary password is generated for root@localhost:
//5、MySQL需要輸入剛才的臨時默認密碼
mysql -u root -p
//6、修改默認登陸密碼
ALTER USER 'root'@'localhost' IDENTIFIED BY '自定義特殊密碼';
//7、MySQL設置遠程登陸
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '自定義特殊密碼' WITH GRANT OPTION;
//8、啟用防火牆
systemctl start firewalld.service
//9、設置防火牆允許3306端口訪問
firewall-cmd --zone=public --add-port=3306/tcp --permanent
//10、重啟防火牆
firewall-cmd --reload
//11、修改默認編碼配置 在[mysqld]下麵直接添加
vim /etc/my.cnf
character_set_server=utf8
init_connect='SET NAMES utf8'
//12、重啟mysql服務
systemctl restart mysqld.service
//13、創建MySQL用戶(用戶名,密碼,權限)
CREATE USER 'admin'@'%' IDENTIFIED BY '自己的密碼';
GRANT GRANT OPTION ON *.* TO 'admin'@'%';
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER ON *.* TO 'admin'@'%';

***************************** 防火牆配置 *********************************
//1、將接口添加到區域,默認接口都在public
firewall-cmd --zone=public --add-interface=eth0 --permanent 
//2、設置默認接口區域
# firewall-cmd --set-default-zone=public --permanent 
//3、將端口添加到區域
firewall-cmd --zone=public --add-port=5000/tcp --permanent 
firewall-cmd --zone=public --add-port=80/tcp --permanent 

************************* Nginx ***************************************
//1、下載
curl -o  nginx.rpm https://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
rpm -ivh nginx.rpm
yum install nginx
//2、啟動nginx服務
systemctl start nginx
//3、開機啟動nginx
systemctl enable nginx.service
//4、配置nginx
vim /etc/nginx/conf.d/default.conf
//修改以下內容
server {
    listen 80;
    location / {
        proxy_pass https://localhost:5000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection keep-alive;
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
        }
}

//5、保存完執行nginx重新加載
nginx -s reload
//6、如遇到報錯:nginx: [error] open() "/var/run/nginx.pid" failed (2: No such file or directory),執行下麵的
systemctl start nginx
nginx -s reload

//以下東西沒有遇到,如果遇到可以執行
yum install policycoreutils-python
sudo cat /var/log/audit/audit.log | grep nginx | grep denied | audit2allow -M mynginx
sudo semodule -i mynginx.pp

****************** 配置守護服務(Supervisor) ******************
//1、安裝守護服務
yum install python-setuptools
easy_install supervisor
//2、配置
mkdir /etc/supervisor
echo_supervisord_conf > /etc/supervisor/supervisord.conf
//3、修改supervisord.conf
vim /etc/supervisor/supervisord.conf
(將文件末尾的)
;[include]
;files = relative/directory/*.ini
改為
[include]
files = conf.d/*.conf

mkdir conf.d
cd conf.d
//4、新建守護文件(切記空格)

[program:myCore1]
command=dotnet run ; //運行程序的命令
directory=/mycore/first/ ; //命令執行的目錄
autorestart=true ; //程序意外退出是否自動重啟
stderr_logfile=/var/log/myCore1.err.log ; //錯誤日誌文件
stdout_logfile=/var/log/myCore1.out.log ; 輸出日誌文件
environment=ASPNETCORE_ENVIRONMENT=Production ; //進程環境變量
user=root ; 進程執行的用戶身份
stopsignal=INT

最後執行:wq myCore1.conf
//5、運行supervisord,查看是否生效
supervisord -c /etc/supervisor/supervisord.conf
(如果報以下錯誤)
Another program is already listening on a port that one of our HTTP servers is configured to use.  Shut this program down first before starting supervisord.
//解決方法:(如果在失敗,參見:https://segmentfault.com/a/1190000003955182)
sudo unlink /tmp/supervisor.sock 
//6、查看是否啟動成功
ps -ef
//7、配置Supervisor開機啟動服務
vim /usr/lib/systemd/system/supervisord.service

# dservice for systemd (CentOS 7.0+)
# by ET-CS (https://github.com/ET-CS)
[Unit]
Description=Supervisor daemon

[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
ExecStop=/usr/bin/supervisorctl shutdown
ExecReload=/usr/bin/supervisorctl reload
KillMode=process
Restart=on-failure
RestartSec=42s

[Install]
WantedBy=multi-user.target

//8、開機啟動
systemctl enable supervisord


//驗證是否設置開機啟動成功
systemctl is-enabled supervisord

最後更新:2017-11-16 17:34:05

  上一篇:go  就百度網頁快照抓取時間的論點
  下一篇:go  11月16日雲棲精選夜讀:阿裏雲 oss JavaScript客戶端簽名文件上傳 vue2.0