最近两周时间,做了很多搭建CAS的实践,也学习了很多关于Docker应用的知识;深深体会到了使用Docker部署环境的方便与快捷,以及关于node.js和Laravel的一些了解;但是对CAS本身还是不够了解,下周要部署单点登录的应用,再往后打算部署一下原生的CAS。
流程
- 准备
Docker环境,稳定(科学)的网络连接 - 环境部署
- 下载镜像(根据业务内容精(sui)心(yi)挑选的镜像),创建容器并进入容器shell。
镜像地址docker pull oblank/Docker-Centos-Nginx-PHP-Mongo-Redis-Memcached
docker run -it -P -d --name cas oblank/Docker-Centos-Nginx-PHP-Mongo-Redis-Memcached
docker exec -it cas /bin/bash
2. 更新源、软件包(可选),以及安装缺少的git。
yum update
yum upgrade
yum install git
- 开始部署
项目文档地址
– Composer拉取项目
如果没有composer,安装方法composer create-project leo108/php_cas_server php_cas_server dev-master
- npm安装
cd php_cas_server npm install
由于众所周知的网络原因,安装可能会失败,通常的操作是使用淘宝团队提供的cnpm。
npm install -g cnpm --registry=https://registry.npm.taobao.org
用法同npm。
若node-sass下载遇到Timeout导致后续报错,可使用cnpm代替npm;若再次失败,则尝试先报node-sass文件下载到本地——下载地址(寻找合适版本)npm i node-sass --sass_binary_path=/home/php_cas_server/darwin-x64-48_binding.node
若安装失败需再次安装,需先卸载。
npm uninstall node-sass
参考链接
– gulp部署cnpm install gulp -g
gulp -v
gulp
参考链接
4. 按照项目文档中的指示完成初始化。
– MySQL重置密码
5. 项目测试
Laravel为项目提供了测试方法(仅限本机访问?)php artisan serve --port=80
(在项目根目录执行)这样通过curl lcoalhost就可以访问了。
6. 部署上线
在此镜像中可直接修改Nginx在/etc/nginx/conf.d/default.conf的配置文件的根目录到…/php_cas_server/public,若出现500,可能是权限问题。Java版参考资料
- 开始部署