最近两周时间,做了很多搭建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
- 更新源、软件包(可选),以及安装缺少的git。
yum update yum upgrade yum install git
开始部署
-
Composer拉取项目
如果没有composer,安装方法composer create-project leo108/php_cas_server php_cas_server dev-master
安装软件包之前先将composer切换成中国镜像
composer config -g repo.packagist composer https://[packagist.phpcomposer.com](https://link.jianshu.com/?t=http://packagist.phpcomposer.com/)
-
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
-
按照项目文档中的指示完成初始化。
MySQL重置密码 -
项目测试
Laravel为项目提供了测试方法(仅限本机访问?)php artisan serve --port=80
(在项目根目录执行)这样通过curl localhost就可以访问了。
-
部署上线
在此镜像中可直接修改Nginx在/etc/nginx/conf.d/default.conf的配置文件的根目录到.../php_cas_server/public,若出现500,可能是权限问题。 -
整合登录
参考链接
Java版参考资料
* [项目部署文档](https://apereo.github.io/cas/5.0.x/installation/Configuration-Management.html "项目部署文档")
* [SSO-CAS部署指南](http://www.imooc.com/article/3576 "SSO-CAS部署指南")
* [CAS之Docker(好像不怎么管用)](http://blog.csdn.net/xichenguan/article/details/73287228 "CAS之Docker(好像不怎么管用)")
* [CAS部署及简介](http://blog.csdn.net/xiaoxing598/article/details/55518241 "CAS部署及简介")
* [Github-cas_webapp_docker](https://github.com/apereo/cas-webapp-docker "Github-cas_webapp_docker")
网友评论