MySQL、Nignx和Docker在Linux上的安装详解

1.Mysql安装

cpp 复制代码
准备工作:卸载Linux系统中自带的mysql/mariadb数据库,否则MySQL将安装失败

rpm -qa | grep mariadb

rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64

下载并上传mysql安装包
mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz

解压安装包到当前目录,并将解压后的文件夹移动到 /usr/local 目录下,改名为 mysql

tar -xvf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz

配置环境变量(编辑/etc/profile,追加内容)

export MYSQL_HOME=/usr/local/mysql
export PATH=$MYSQL_HOME/bin:$PATH

立即MySQL为系统服务

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

chkconfig --add mysql
cpp 复制代码
初始化数据库
groupadd mysql
useradd -r -g mysql -s /bin/false mysql

mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

初始化完毕后,日志中输出mysql的root用户的临时密码,记得复制保存下来。

启动服务
systemctl start mysql

mysql -uroot -pxxxxx

配置MySQL的root用户的密码,授权远程访问

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '1234';
CREATE USER 'root'@'%' IDENTIFIED BY '1234';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;

2.Nignx安装

cpp 复制代码
安装nginx运行时需要的依赖:yum install -y pcre pcre-devel zlib zlib-devel openssl openssl-devel

上传nginx的源码包
nginx-1.20.2.tar.gz

解压源码包到当前目录:tar -zxvf nginx-1.20.2.tar.gz

进入到解压目录(cd nginx-1.20.2)后,执行命令:./configure --prefix=/usr/local/nginx

执行编译nginx的指令:make

执行安装nginx的指令,安装到上指定的 /usr/local/nginx 目录:make install

进入nginx安装目录/usr/local/nginx,启动nginx服务:sbin/nginx

3.防火强操作

cpp 复制代码
防火墙操作:
· 查看防火墙状态(systemctl status firewalld, firewall-cmd --state)
· 关闭防火墙(systemctl stop firewalld)
· 开启防火墙(systemctl start firewalld)
· 永久关闭防火墙(systemctl disable firewalld)

· 开放指定端口(firewall-cmd --zone=public --add-port=8080/tcp --permanent)
· 关闭指定端口(firewall-cmd --zone=public --remove-port=8080/tcp --permanent)
· 立即生效(firewall-cmd --reload)
· 查看开放的端口(firewall-cmd --zone=public --list-ports)

注意:
· 1, systemctl是管理Linux中服务的命令,可以对服务进行启动、停止、重启、查看状态等操作
· 2, firewall-cmd是Linux中专门用于控制防火墙的命令
· 3, 为方便远程登录,建议不要禁用防火墙

4.Docker安装

cpp 复制代码
1.卸载旧版
首先如果系统中已经存在的Docker,则先卸载.

  yum remove docker \
    docker-client \
    docker-client-latest \
    docker-common \
    docker-latest \
    docker-latest-logrotate \
    docker-logrotate \
    docker-engine \
    docker-selinux

2.配置Docker的yum库
首先安装一个yum工具

  sudo yum install -y yum-utils device-mapper-persistent-data lvm2

安装完成后,执行命令,配置Docker的yum源(已更新为阿里云):

  sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo

更新yum,建立缓存

  sudo yum makecache fast

3.安装Docker
最后,执行命令,安装Docker

 yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

4. 启动和校验
启动Docker

  # 启动Docker
  systemctl start docker
  # 停止Docker
  systemctl stop docker
  # 重启
  systemctl restart docker
  # 设置开机自启
  systemctl enable docker
  # 运行后自启
  systemctl enable docker
  # 执行docker ps命令,如果不报错,说明安装成功
  docker ps
5. 配置镜像加速
镜像地址可能会变更,如果失效可以百度最新的docker镜像。

  # 创建目录
  rm -f /etc/docker/daemon.json
  # 写入内容
  tee /etc/docker/daemon.json <<-'EOF'
  {
    "registry-mirrors": [
      "https://hub-mirror.c.163.com",
      "https://mirror.tuna.tsinghua.edu.cn",
      "https://mirrors.sohu.com",
      "https://ustc-edu-cn-mirror.aliyuncs.com",
      "https://docker.m.daocloud.io",
      "https://docker.nju.edu.cn",
      "https://docker-1255275522.cn",

    "https://docker.m.daocloud.io",
    "https://noohub.ru",
    "https://huecker.io",
    "https://dockerhub.timeweb.cloud",
    "https://docker.rainbond.cc"
   }
  EOF

 # 重启加载配置
 systemctl daemon-reload

 # 重启Docker
 systemctl restart docker
相关推荐
Wang's Blog11 分钟前
MongoDB小课堂: 游标操作与文档投影技术深度解析
数据库·mongodb
q***420513 分钟前
使用Django Rest Framework构建API
数据库·django·sqlite
共享家952731 分钟前
QT-界面优化(下)
开发语言·数据库·qt
maray40 分钟前
Chroma 的设计哲学
数据库·人工智能
e***0961 小时前
SQL 中UPDATE 和 DELETE 语句的深入理解与应用
数据库·sql
z***94842 小时前
Linux下安装Nginx服务及systemctl方式管理nginx详情
linux·运维·nginx
凉晓风2 小时前
Linux上TCP通信异常排查工具命令
linux·运维·tcp/ip
Xの哲學2 小时前
Linux 分区表深度技术剖析
linux·网络·算法·架构·边缘计算
程序员小白条2 小时前
你面试时吹过最大的牛是什么?
java·开发语言·数据库·阿里云·面试·职场和发展·毕设
老华带你飞3 小时前
社区养老保障|智慧养老|基于springboot+小程序社区养老保障系统设计与实现(源码+数据库+文档)
java·数据库·vue.js·spring boot·小程序·毕设·社区养老保障