Category Archives: 技术分享

Centos 7.6 云服务器全新安装LAMP手册

安装清单

  1. centos 7.6 64
  2. httpd 2.4
  3. php 7.2
  4. mariadb 10.3

挂载硬盘

1. 硬盘分期

fdisk -l 查看自己的服务器上是否有没有挂载的硬盘

Centos 7.6 云服务器全新安装LAMP手册

格式化硬盘 fdisk [未格式化的硬盘],如fdisk /dev/xvdb 回车

Centos 7.6 云服务器全新安装LAMP手册

按上图操作后,再次用fdisk -l 将看到你硬盘已经格式化

Centos 7.6 云服务器全新安装LAMP手册

2.格式化硬盘

用mkfs.ext3 [你的硬盘],如mkfs.ext3 /dev/xvdb1 进行格式化;格式可以采用mkfs.ext4等看具体的用途,详细介绍看这里:https://linux.die.net/man/8/mkfs

3.挂载硬盘

创建要硬盘要挂载的目录,mkdir /var/www/html

挂载到目录 mount /dev/xvdb1 /var/www/html

配置/etc/fstab,让系统启动自动挂载 在文件的末尾加上

/dev/xvdb1 /var/www/html ext3 defaults 0 0

4.reboot 重启

安装apache

  1. yum install httpd
  2. systemctl start httpd
  3. systemctl enable httpd

安装php

  1. rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
  2. rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
  3. 安装是用php72w代替php即可,如yum install php72w php72w-mysql

安装mariadb

删除已有的mysql或者低版本mariadb

  1. rpm -qa | grep mariadb
  2. yum remove 要删除的rpm

增加rpm库

vi /etc/yum.repos.d/MariaDB.repo

在该文件中添加以下内容保存:

[mariadb]name=MariaDB

baseurl=http://mirrors.aliyun.com/mariadb/yum/10.3/centos7-amd64

gpgkey= http://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB

gpgcheck = 1

systemctl start mariadb

systemctl enable mariadb

接下来进行MariaDB的相关简单配置

mysql_secure_installation

docker配置lamp环境笔记

基本概念

容器container本质是一个运行在主机上的进程

  • 查看运行的容器docker ps 默认只看运行中的
  • 查看所有的容器docker ps -a
  • 删除容器 docker rm 容器id[或容器名]
  • 停止一个容器 docker stop 容器id

镜像image是容器的静态概念(可以看做容器的“安装包”)

  • 查看安装的镜像docker images
  • 删除镜像docker rmi 镜像名

仓库是存放镜像的地方,跟git一样的

docker配置lamp环境笔记

镜像是打包好的运行环境,比如centos,做好这个镜像后上传到镜像库,别人就可以直接pull下来运行使用了。

安装过程记录

  1. 拉取镜像 docker pull centos
  2. 运行容器 docker run -it -p 8080:80 centos /bin/bash 该命令总是会创建一个新容器,如果要启动已经存在的容器,用docker start 容器id
  3. -i 交互模式
  4. -t 分配一个伪终端
  5. -p 主机端口:容器内的端口
  6. centos镜像名,公共受信任的镜像可以直接用镜像名,个人镜像一般是镜像库用户名/镜像名,镜像库和git库类似,如果要拉取进行的某个版本标签,可以镜像名:[Tag名]
  7. /bin/bash启动镜像后执行的命令,这里也就是启动后打开终端,然后可以使用centos的yum安装需要的包,systemctl start 启动需要的服务
  8. 但在systemctl start时报错:Failed to get D-Bus connection: Operation not permitted
  9. 这是因为D-Bus没有启动,启动选项加上 –privileged -d,并把命令从/bin/bash 修改为init
  10. init就是/usr/sbin/init, 里面会自动启动D-Bus
  11. –privileged 赋予容器更多的权限,以便正常启动D-Bus
  12. -d是进入后台运行,init并不是控制终端,执行完成后它会一直停在那个地方,无法进行命令交互,所以-d让他脱离命令行,进入后台运行
  13. 然后docker exec -it [容器id] /bin/bash 进入容器的终端,接着就可以进行使用centos的各项命令了
  14. 需要安装的内容
  15. PHP
  16. Apache
  17. MySQL
  18. openssh-server 方便通过ssh登录容器,主要是方便用sftp scp这些上传下载代码
  19. 目录共享,我们可以把docker容器中apache的工作目录挂载到主机上(运行docker的机器)的目录
  20. 增加ssh端口映射,如果run后发现需要增加端口, 比如增加ssh端口,可以这么做
  21. docker commit [容器id] [起一个名字],先把当前的容器另存为一个镜像
  22. 然后在用run启动这个镜像,并带上你添加的端口 docker run -it -p 2222:22 -p 8080:80 –privileged -d [commit时的镜像名字] init
  23. 但这里要注意,之前的端口映射也要加上 , 这里的做法只是在之前的容器上继续启动,之前镜像中安装的内容也还在,但run命令的参数和之前是一样的,增加内容而已
  24. vim /etc/ssh/sshd_config
  25. 添加PermitRootLogin yes
  26. 记得docker exec -it [容器id] /bin/bash后设置一个root密码
  27. 在上面主机和容器目录共享,在run时加上参数 -v [主机的目录]:[容器中的目录],比如 -v /workspace/ydeditor:/var/www/html