[事象]
以下の様なコマンドをシェルで実行し、Webコンソール経由のTomcatマネージャーではなく、シェルスクリプトからTomcatに対してデプロイを行おうとした。
curl --upload-file contextName.war "http://manager:password@localhost:8080/manager/text/deploy?path=/contextName&update=true"
結果、以下の様な403エラーが発生した。
(中略)
Caused by:org.codehaus.cargo.container.tomcat.internal.TomcatManagerException:The username you provided is not allowed to use the text-based Tomcat Manager (error 403)
[原因]
実行ユーザーにmanager-guiの権限は与えていたが、manager-scriptの権限を設定していなかった。
[対応方法]
実行ユーザーにtextベースで実行する際のユーザー権限を付与する。
<tomcat-users> <user username="manager" password="password" roles="manager-gui, manager-script"/> </tomcat-users>
[蛇足]
Jenkinsを導入している環境であったため、実はシェルを使わなくてもビルド後にTomcatへデプロイする処理をJenkinsに設定してやるだけで実は良かった…。
[参考URL]
martin.podval.eu
Rocky Jaiswal | Deploying Java applications with Capistrano
- 作者: 藤野圭一
- 出版社/メーカー: オライリージャパン
- 発売日: 2014/12/26
- メディア: 大型本
- この商品を含むブログ (1件) を見る
[改訂第3版]Jenkins実践入門 ――ビルド・テスト・デプロイを自動化する技術 (WEB+DB PRESS plus)
- 作者: 佐藤聖規,和田貴久,新井雄介,米沢弘樹,山岸啓,岩成祐樹,川口耕介
- 出版社/メーカー: 技術評論社
- 発売日: 2017/05/24
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る