1.系统配置如下:
‘by: /home/inkhin/桌面/深度截图_选择区域_20191004145104.png
[吐槽: ChromeLinux版居然不能用博客园TinyMce的上传图片功能]
2.安装Docker
1 sudo su ‘提升权限 2 pacman -S docker '下载安装docker 3 systemctl enable docker ‘开机自启动设置 4 systemclt disable docker ‘关机自关闭设置
参考资料: http://www.docker.org.cn/book/install/arch-install-docker-36.htm
systemctl start docker ‘ 启动docker
3.安装镜像
这里我遇到了一些问题,因为Docker是从国外源下载的,但也不知道是墙还是线路问题,我200M的下行网速被限制到几十kb/s。查解决方法的时候看见有更换阿里云的,但是都没有具体详解,于是我放弃了这个方法,还有说修改registry-mirrors的,但是我没有去尝试,因为我找到一个更方便的东西 docker国内镜像站 -- Daocloud。
按照后台指示和不同的系统版本你可以使你的宿主机连接上daocloud的控制面板,并且交由后台管理面板来操控。好像是有使用期限的,不过没事,我们只是要利用它下载一些镜像就行啦。
安装需要LNMP等镜像,就可以开始愉快的项目配置啦。
4.配置代码
有一件事你要知道,什么是容器和镜像。
一个容器相当于一个虚拟机,一个虚拟机运行一份镜像。
Daocloud在安装镜像的时候是默认生成一个对应容器的,你应该可以把它取消,但是如果建立了也没关系,你可以去集群管理-自有集群-查看详情-删除掉建立的容器就好了。
为什么要删除,因为配置很麻烦,已建立的容器可能存在占用默认的端口,但是我们肯定不想依赖面板去更改参数。
安装配置mySQL:
//mysql的配置 注意,这里是手动安装的没有用面板,所以有8.0 //下载 mysql [inkhin-pc inkhin]# docker pull mysql Using default tag: latest latest: Pulling from library/mysql Digest: sha256:6d95fa56e008425121e24d2c01b76ebbf51ca1df0bafb1edbe1a46937f4a149d Status: Downloaded newer image for mysql:latest docker.io/library/mysql:latest //#启动 [inkhin-pc inkhin]# docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=10584940w! -d mysql //#进入容器 [inkhin-pc inkhin]# docker exec -it mysql bash //#登录mysql root@62f163f9dc04:/# mysql -u root -p Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) root@62f163f9dc04:/# mysql -u root -p Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) root@62f163f9dc04:/# mysql -u root -p Enter password: //登录成功信息 我只复制了一段。 Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 11 Server version: 8.0.17 MySQL Community Server - GPL mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '10584940w!'; Query OK, 0 rows affected (0.02 sec) //添加远程登录用户 mysql> CREATE USER 'lingqingxue'@'%' IDENTIFIED WITH mysql_native_password BY '10584940w!'; Query OK, 0 rows affected (0.00 sec) mysql> GRANT ALL PRIVILEGES ON *.* TO 'LINGQINGXUE'@'%'; '打错啦 ERROR 1410 (42000): You are not allowed to create a user with GRANT mysql> GRANT ALL PRIVILEGES ON *.* TO 'lingqingxue'@'%'; Query OK, 0 rows affected (0.01 sec) mysql>
用终端管理SQL太费劲了,于是我查找到了一个SQL管理图形程序。
sudo pacman -S mysql-workbench
图形运行如图:
配置Nginx
//nginx配置 //创建文件夹 mkdir -p /home/inkhin/docker/nginx/www /home/inkhin/docker/nginx/logs /home/inkhin/docker/nginx/conf/nginx.conf /* 查询容器ID ➜ ~ sudo docker ps [sudo] password for inkhin: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 62f163f9dc04 mysql "docker-entrypoint.s…" About an hour ago Up About an hour 0.0.0.0:3306->3306/tcp, 33060/tcp mysql e1baa3443dc1 nginx "nginx -g 'daemon of…" About an hour ago Up About an hour 0.0.0.0:80->80/tcp inkhin-test a7334d2b3902 daocloud.io/library/centos:7.1.1503 "/bin/bash" 3 hours ago Restarting (0) 7 seconds ago dao_test-centos7_1_1 e402dbbee8a4 daocloud.io/library/php:7.3.3 "docker-php-entrypoi…" 3 hours ago Restarting (0) 7 seconds ago dao_test-php_1 615397b10d6c daocloud.io/daocloud/daomonit "/usr/local/bin/daom…" 3 hours ago Up 3 hours daomonit ➜ ~ */ // 拷贝Nginx配置 这里的cp 后的容器ID 要自己复制 docker cp 6dd4380ba708:/etc/nginx/nginx.conf /home/inkhin/docker/nginx/conf/ // 运行容器 docker run -d -p 80:80 --name inkhin-test -v /home/inkhin/docker/nginx/www:/usr/share/nginx/html -v /home/inkhin/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/inkhin/docker/nginx/logs:/var/log/nginx nginx
在 nginx/www/下 新建一个 index网页文档,通过127.0.0.1或者localhost就能访问网页了。