写在前面,推荐下载resin4.0.47版本。其它版本没有测试
最近打算做一个小项目,然后容器选用了resin。想通过web提交war文件的方式 进行部署,更新代码也方便。
试了resin最新的版本(目前最新版本为4.0.53),提交war文件到webapps下面都是.tmp文件。百度google一通还是没找到解决办法。
看了下公司用的resin版本,选择4.0.47。下载后发现没最新版本的上传问题。
通过web提交war文件方式步骤如下:
步骤一:修改resin.properties。推荐配置如下
resin.properties
# resin.properties - configuration variable values # # See resin.xml, cluster-default.xml, and health.xml for full configuration. # Any variable defined by ${...} can be set as a property in this file. # # Individual server overrides can be specified by prepending the server.id. # For example, increasing the log level for an individual server: # # log_level : info # app-0.log_level : finest # # Like Resin XML configuration, modification of this file will trigger # a restart. # # General log level (modify resin.xml for more granular log level adjustments) # log_level : finer # Enable verbose browser error reporting dev_mode : false # How often Resin should check for updated files. # dependency_check_interval : 5m # Enable /resin-doc Resin documentation resin_doc : false resin_doc_host : # List Triad server ip-addresses:hmux-port for each tier, space separated # App tier Triad servers must be listed to enable web-tier to # app-tier load-balancing # web-tier Triad servers: web-0 web-1 web-2 # web_servers : 127.0.0.1:6810 # app-tier Triad servers: app-0 app-1 app-2 app_servers : 127.0.0.1:6800 # Configures Resin for a memcached server tier # memcached-tier Triad servers: memcached-0 memcached-1 memcached-2 # memcached_servers : 127.0.0.1:6820 # memcached_port : 11211 # proxycache tier: proxycache-0 proxycache-1 proxycache-2 # proxycache_servers : 127.0.0.1:6830 # backend_servers : 127.0.0.1:80 # Allow elastic nodes to join the cluster (enable for cloud mode) # elastic_cloud_enable : true # The cluster that elastic nodes should join - each will contact a Triad server # Use a separate resin.properties file for each cluster home_cluster : app # Used for an elastic server to join the cluster in home_cluster # elastic_server : true # Create a distinct webapps/ directory for each server, for vertical scaling # elastic_webapp : true # Used for cloud servers with dynamic IP addresses where the DNS name for the # server is assigned after the server starts. Resin will retry the start. # elastic_dns : true # specifies the --server in the config file # home_server : app-0 # Set HTTP and HTTPS bind address # http_address : * # Set HTTP and HTTPS ports. # Use overrides for individual server control, for example: app-0.http : 8081 app.http : 80 app.https : 8443 web.http : 80 # web.https : 8443 # memcached.http : 8080 # memcached.https : 8443 # proxycache.http : 8080 # proxycache.https : 8443 # For security, Resin can switch to a non-root user after binding to port 80 setuid_user : setuid_group : # Arg passed directly to the JVM jvm_args : -Xms1500m -Xmx1500m -XX:PermSize=206m -XX:MaxPermSize=206m # jvm_args : -Xmx2048m -XX:MaxPermSize=256m jvm_mode : -server # This classpath has priority over the default classpath, like when you want to # use a third party library like Hibernate‘s JPA # jvm_classpath : # Local URLs for the watchdog to check to ensure the server is up, # space separated # http_ping_urls : http://127.0.0.1/test.jsp # Throttle the number of active threads for a port port_thread_max : 1000 accept_thread_max : 1000 accept_thread_min : 200 keepalive_max : 512 # Enable JNI TCP speed optimizations tcp_cork : true sendfile : true keepalive_select_enable : true # OpenSSL certificate configuration # Keys are typically stored in the resin configuration directory. # openssl_file : keys/test.crt # openssl_key : keys/test.key # openssl_password : changeme # openssl_protocols : -sslv2 -sslv3 # JSSE certificate configuration # Keys are typically stored in the resin configuration directory. # jsse_keystore_type : jks # jsse_keystore_file : /etc/resin/keys/server.keystore # jsse_keystore_password : changeme # In absence of a signed certificate, Resin will fallback to using a # self-signed development certificate if HTTPS is enabled # Enable the proxy-cache - for caching static content in memory proxy_cache_enable : false # Sets the proxy cache memory size # proxy_cache_size : 256m # Enable clustered persistent sessions (for failover) session_store : true # disable the quercus *.php mapping when using Apache for PHP # quercus_disable : true # Web-apps named with numeric suffixes, e.g. foo-10.0.war and can be browsed # as /foo. When a new version of the web-app is deployed, Resin continues # to route active session requests to the previous web-app version while # new sessions go to the new version, so users will not be aware of the # application upgrade. # webapp_multiversion_routing : true # Set the email address to receive weekly and restart PDF reports # email : [email protected] # pdf_summary : true # Set a global password to prevent foreign Resin instances from connecting. # Must be identical between web, app, and cache clusters. # cluster_system_key : changeme # Enable remote admin (for remote CLI and for EC2 ext: triad discovery) # remote_admin_enable : true # Enable /resin-admin web administration console web_admin_enable : true web_admin_host : # Permit access to /resin-admin from non-local network ip-addresses web_admin_external : true # Require HTTPS to access /resin-admin # web_admin_ssl : true # Enable Resin REST Admin # rest_admin_enable : true # Require SSL for REST Admin # rest_admin_ssl : true # Access to /resin-admin and remote CLI is password restricted. # Use "resinctl generate-password" and copy/paste here to set the admin # admin_user : admin # admin_password : {SSHA}xxxxxxxx # Enable reading EC2 user data as resin properties # properties_import_url : http://169.254.169.254/latest/user-data
resin.xml
<host id="youryuming.com" root-directory="."> <web-app id="/" root-directory="webapps/testDeploy"/> </host>
步骤二:访问https://youryuming.com:8443/resin-admin/
tips:如果没有进行域名映射,使用服务器ip也可以
PS:为什么要使用https,注册不使用https也可以,通过youryuming.com:8443/resin-admin/ 也可以。后面进行上传war包就会提示需要使用ssl。为了避免麻烦索性直接通过https进行注册登录
点击create configuration file 后根据页面提示进行操作修改,这里不再赘述。
resin容器检测到有配置文件修改时,会进行自动重启,修改配置文件时,不用关闭resin或者重启。
步骤三:发布项目
每次部署项目,resin容器都会自动重启。不用手动重启,感觉很爽有没有。。。
时间: 2024-12-09 17:00:04