因为我自己买的服务器已经把系统装好了,并且有程序在上面跑,所以为了防止把服务器环境弄烂,我就用自己电脑上的docker启动了一个centos7系统(本地安装了docker,vm启动不起来,也懒得去解决)来进行测试。
注意:以下内容是基于已经安装好了docker的情况下的,如果没安装,请先安装docker,参考Docker中安装Centos7操作系统_TrueDei-CSDN博客_docker 安装centos7
首先写个 Dockerfile 文件
FROM centos:centos7
MAINTAINER netease
# 更新yum源
RUN yum makecache fast && yum -y update glibc
# 安装常用软件
RUN yum install -y openssh-server vim tar wget curl rsync bzip2 iptables tcpdump less telnet net-tools lsof
# 初始化ssh登陆
RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ''
RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N ''
RUN ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
RUN ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -N ''
RUN echo "RSAAuthentication yes" >> /etc/ssh/sshd_config
RUN echo "PubkeyAuthentication yes" >> /etc/ssh/sshd_config
RUN yum clean all
# 启动sshd服务并且暴露22端口
RUN mkdir /var/run/sshd
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]
运行命令
docker build -t centos7-my .
结束后运行启动容器并进入
#这里一定要用--privileged=true特权模式启动,不然oneinstack启动不了服务,端口随便暴露下,反正时测试
docker run -itd --name os1 -p 10000:22 -p 10003:3306 -p 10001:80 -p 10002:443 -p 20000-21000:20000-21000 --privileged=true centos7-my /usr/sbin/init
docker exec -it os1 bash
启动ssh:
先执行
/usr/sbin/sshd -D
会出现如下结果:
然后执行(回车两次,如果 出现警告可以不用管,如果没有结束程序就ctlr+c)
/usr/sbin/sshd -D &
会出现如下结果:
3、查看是否已经启动成功
使用命令:netstat -ntpl |grep 22 或者 lsof -i:22
[root@d6898c947c4b /] netstat -ntpl |grep 22
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 44/sshd
tcp6 0 0 :::22 :::* LISTEN 44/sshd
[root@d6898c947c4b /] lsof -i:22
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 44 root 3u IPv4 32153435 0t0 TCP *:ssh (LISTEN)
sshd 44 root 4u IPv6 32153437 0t0 TCP *:ssh (LISTEN)
如果出现以上结果,就算成功了。
修改root密码 passwd root
passwd root
Changing password for user root.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
然后用finalshell或者xshell链接容器
下面就开始安装 bbs,博客以及cms系统,这里我会使用一些php的东西,因为php有很多开源的,很稳定的,完整的系统,可以直接拿来用的,便于快速搭建网站
安装OneinStack
选择要安装的版本下载,这里我下载的第一个
下载完后传到docker的centos容器里然后解压开
tar -xzvf oneinstack-full.tar.gz
进入解压出来的文件夹执行 ./install.sh,开始安装,可以根据自己的需要选择需要安装的组件,如果已经安装了nginx,则需要把nginx的配置文件备份下,卸载了,不然不会给你该配置文件,导致装完后啥也没有
Please input SSH port(Default:22):22
Do you want to enable iptables? [y/n]: n
Do you want to install Web server [y/n]: y
Please select Nginx server:
1. Install Nginx
2. Install Tengine
3. Install OpenResty
4. Do not install
Please input a number:(Default 1 press Enter) 1
Do you want to install Apache? [y/n]: n
Please select tomcat server:
1. Install Tomcat-10
2. Install Tomcat-9
3. Install Tomcat-8
4. Install Tomcat-7
5. Do not install
Please input a number:(Default 5 press Enter) 5
Do you want to install Database? [y/n]: y
Please select a version of the Database:
1. Install MySQL-8.0
2. Install MySQL-5.7
3. Install MySQL-5.6
4. Install MySQL-5.5
5. Install MariaDB-10.5
6. Install MariaDB-10.4
7. Install MariaDB-10.3
8. Install MariaDB-5.5
9. Install Percona-8.0
10. Install Percona-5.7
11. Install Percona-5.6
12. Install Percona-5.5
13. Install PostgreSQL
14. Install MongoDB
Please input a number:(Default 2 press Enter) 1
Please input the root password of MySQL(default: xp60njOF): 123456
Please choose installation of the database:
1. Install database from binary package.
2. Install database from source package.
Please input a number:(Default 1 press Enter)
Do you want to install PHP? [y/n]: y
Please select a version of the PHP:
1. Install php-5.3
2. Install php-5.4
3. Install php-5.5
4. Install php-5.6
5. Install php-7.0
6. Install php-7.1
7. Install php-7.2
8. Install php-7.3
9. Install php-7.4
10. Install php-8.0
Please input a number:(Default 7 press Enter)
Do you want to install opcode cache of the PHP? [y/n]: n
Please select PHP extensions:
0. Do not install
1. Install zendguardloader(PHP<=5.6)
2. Install ioncube
3. Install sourceguardian(PHP<=7.2)
4. Install imagick
5. Install gmagick
6. Install fileinfo
7. Install imap
8. Install ldap
9. Install phalcon(PHP>=5.5)
10. Install yaf(PHP>=7.0)
11. Install redis
12. Install memcached
13. Install memcache
14. Install mongodb
15. Install swoole
16. Install xdebug(PHP>=5.5)
Please input numbers:(Default '4 11 12' press Enter)
Do you want to install Pure-FTPd? [y/n]: n
Do you want to install phpMyAdmin? [y/n]: y
Do you want to install redis-server? [y/n]: n
Do you want to install memcached-server? [y/n]: n
写道这里我卡了两天,mysql服务怎么都链接不上,最后就只有算了,还是用我的阿里云服务器来测试了
这里选择自动安装,去自动安装 - OneinStack这个地方选择组件,去服务器运行就行了
成功后访问你的服务器IP:80
搭建bbs
Discuz! 官方站 - PHP 开源论坛 - Powered by Discuz!
解压后上传upload文件夹到 /data/wwwroot/default/,可以把文件夹改一个名字叫bbs,然后给目录权限 chomd 777 -R bbs,然后访问 IP:/bbs ,根据提示安装你的bbs网站就好了 ip:/bbs/install/index.php?method=ext_info 使用向导页
搭建博客
下载 | WordPress.org China 简体中文下载安装包
解压上传的安装包,给权限 将wordpress文件夹移动到/data/wwwroot/default/下面,然后给权限chmod 777 -R wordpress 然后 去数据创建一个数据库 workpress 访问ip:workpress之后根据提示一步步安装
搭建CMS
http://www.dedecms.com/download下载源码包,上传到服务器解压,移动,给权限,访问安装,和上面一样