java项目怎么部署到linux服务器啊?

java项目怎么部署到linux服务器啊?,第1张

1、首先需要在linux服务器上配置java环境,如安装jdk+tomcat

2、配置完成jdk+tomcat环境后,需要把你的java项目复制到tomcat的webapps下

3、复制到tomcat的webapps后,重启tomcat,然后访问http://ip:8080/项目名,浏览验证java项目

4、安装jdk+tomcat环境如下:

1)下载JDK(下面分别是32位系统和64位系统下的版本)

http://downloadoraclecom/otn-pub/java/jdk/7u9-b05/jdk-7u9-linux-i586targzAuthParam=1350717577_c0836b48d7dc4cd4598cdd4f0d49e6f6            #32位

http://downloadoraclecom/otn-pub/java/jdk/7u9-b05/jdk-7u9-linux-x64rpmAuthParam=1350717726_9b669eca29c07ddaaf6d8dc41e7a2684     #64位

# getconf LONG_BIT   #  查看系统多少位

2) 安装JDK70版本

先卸载服务器自带的jdk软件包

# java -version     #查看服务器是否安装过jdk

java version "160_17"

OpenJDK Runtime Environment (IcedTea6 174) (rhel-121b17el6-i386)

OpenJDK Client VM (build 140-b16, mixed mode)

# rpm -qa |grep gcj   #查看服务器安装的jdk软件包信息

libgcj-444-13el6i686

java-150-gcj-1500-291el6i686

#  yum -y remove java-150-gcj-1500-291el6i686    #卸载软件包

安装jdk70  

解压配置安装

# mkdir -p /usr/lib/jvm

# tar zxvf jdk-7u9-linux-i586targz  -C /usr/lib/jvm

# mv /usr/lib/jvm/jdk170_09    /usr/lib/jvm/java7

添加jdk70到系统环境变量

# cp /etc/profile /etc/profilebak    #备份

# vi /etc/profile     #编辑,在最后添加下面的内容 

export JAVA_HOME=/usr/lib/jvm/java7

export JRE_HOME=${JAVA_HOME}/jre  

export CLASSPATH=:${JAVA_HOME}/lib:${JRE_HOME}/lib  

export PATH=${JAVA_HOME}/bin:$PATH 

# source /etc/profile  #使配置文件立即生效

由于系统中可能会有默认的其他版本JDK,所以,为了将我们安装的JDK设置为默认JDK版本,还要进行如下工作。

update-alternatives --install /usr/bin/java java /usr/lib/jvm/java7/bin/java 300  

update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java7/bin/javac 300  

update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/java7/bin/jar 300   

update-alternatives --install /usr/bin/javah javah /usr/lib/jvm/java7/bin/javah 300   

update-alternatives --install /usr/bin/javap javap /usr/lib/jvm/java7/bin/javap 300  

执行下面命令,设置默认版本,此命令执行后,系统会列出当前存在的各种JDK版本,会提示你选择

# update-alternatives --config java

测试

# java -version       # 测试是否成功 

下载并启动tomcat

# cd /data  进入你放置的目录

# wget http://mirrorscnniccn/apache/tomcat/tomcat-7/v7056/bin/apache-tomcat-7056targz

# tar -zxv -f apache-tomcat-7056targz

# mv apache-tomcat-7056 /usr/local/tomcat7 

# chmod 755 -R /usr/local/tomcat7/

# /usr/local/tomcat7/bin/startupsh

ftp工作是会启动两个通道:

控制通道 , 数据通道

在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种模式:port模式(主动模式)和pasv(被动模式)

PORT模式:

在客户端需要接收数据时,ftp_client(大于1024的随机端口)-PORT命令->ftp_server(21) 发送PORT命令,这个PORT命令包含了客户端是用什么端口来接收数据(大于1024的随机端口),在传送数据时,ftp_server将通过自己的TCP 20 端口和PORT中包含的端口建立新的连接来传送数据。

PASV模式:

传送数据时,ftp_client--PASV命令-->ftp_server(21) 发送PASV命令时,ftp_server自动打开一个1024--5000之间的随机端口并且通知ftp_client在这个端口上传送数据,然后客户端向指定的端口发出请求连接,建立一条数据链路进行数据传输。

安装ftp

#rpm -qa vsftpd 查看是否已经安装

#yum install -y vsftpd

#rpm -ql vsftpd

/etc/logrotated/vsftpd vsftpd的日志文件

/etc/pamd/vsftpd PAM认证文件

/etc/rcd/initd/vsftpd 启动脚本

/etc/vsftpd vsftpd的配置文件存放的目录

/etc/vsftpd/ftpusers 禁止使用vsftpd的用户列表文件

/etc/vsftpd/user_list 禁止或允许使用vsftpd的用户列表文件

/etc/vsftpd/vsftpdconf 主配置文件

/etc/vsftpd/vsftpd_conf_migratesh vsftpd操作的一些变量和设置

/usr/sbin/vsftpd vsftpd的主程序

其他一些说明文档和手册文件略!

/var/ftp 匿名用户主目录

/var/ftp/pub 匿名用户的下载目录

#service vsftpd start

#chkconfig --level vsftpd

#chkconfig --level 2345 vsftpd on

2 匿名用户的登录名:ftp(anonymous) 密码空 ,登录的目录为/var/ftp

用匿名用户登录的时候默认是只有下载的权限,没有上传,创建和删除的权限:

#vim /etc/vsftpd/vsftpdconf

anon_upload_enable=YES 上传

anon_mkdir_write_enable=YES 创建

anon_other_write_enable=YES 删除

#service vsftpd restart

为了安全应该禁止匿名用户的登录:

123456 #vim /etc/vsftpd/vsftpdconf

anonymous_enable=NO

#anon_upload_enable=YES 上传

#anon_mkdir_write_enable=YES 创建

#anon_other_write_enable=YES 删除

#service vsftpd restart

3 创建一个直接登录系统用户来登录ftp:

#useradd -s /sbin/nologin viong

#passwd viong

用户具有 上传 创建 下载 切换目录

------------------------------------------------------------------

4 加强vsftp安全设置:

限制系统用户锁定在家目录:

#vim /etc/vsftpd/vsftpdconf

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list 限制更多的系统用户,把需要限制的用户加入/etc/vsftpd/chroot_list中即可

#touch /etc/vsftpd/chroot_list

#cut -d: -f 1 /etc/passwd >>/etc/vsftpd/chroot_list 将本地用户都加入到chroot_list

限制重要系统用户不能登录ftp:

#cat /etc/vsftpd/ftpusers 默认已经添加了系统中一些比较重要的用户

#echo "viong" >>/etc/vsftpd/ftpusers 此时viong不能登录ftp

利用ftp用户策略允许登录ftp的系统用户:

/etc/vsftpd/user_list 只有在这个文件中的用户才能登录系统:

#vim /etc/vsftpd/vsftpdconf

#在userlist_enable=YES 的后面添加

userlist_deny=NO

userlist_file=/etc/vsftpd/user_list

设置登录ftp目标ip地址:用iptables设置

---------------------------------------

搭建支持SSL加密传输的vsftpd:

#openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/vsftpd/vsftpdpem -out /etc/vsftpd/vsftpdpem 生成证书

#vim /etc/vsftpd/vsftpdconf

ssl_enable=YES

allow_anon_ssl=NO

force_local_data_ssl=YES

force_local_logins_ssl=YES

ssl_tlsv1=YES

ssl_sslv2=YES

ssl_sslv3=YES

rsa_cert_file=/etc/vsftpd/vsftpdpem

下面是ssl参数一些定义,根据自己需求去修改:

ssl_enable=yes/no //是否启用 SSL,默认为no

allow_anon_ssl=yes/no //是否允许匿名用户使用SSL,默认为no

rsa_cert_file=/path/to/file //rsa证书的位置

dsa_cert_file=/path/to/file //dsa证书的位置

force_local_logins_ssl=yes/no //非匿名用户登陆时是否加密,默认为yes

force_local_data_ssl=yes/no //非匿名用户传输数据时是否加密,默认为yes

force_anon_logins_ssl=yes/no //匿名用户登录时是否加密,默认为no

force_anon_data_ssl=yes/no //匿名用户数据传输时是否加密,默认为no

ssl_sslv2=yes/no //是否激活sslv2加密,默认no

ssl_sslv3=yes/no //是否激活sslv3加密,默认no

ssl_tlsv1=yes/no //是否激活tls v1加密,默认yes

ssl_ciphers=加密方法 //默认是DES-CBC3-SHA

#service vsftpd restart

用flashftp连接:

连接类型为:FTP使用公开SSL(验证SSL)

地址:192168137130:21

登录类型:普通

用户:viong

密码:123

1 安装SVN服务器:

检查是否已安装

# rpm -qa subversion

安装SVN服务器

# yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql

验证安装

# cd /etc/httpd/modules

# ls | grep svn

mod_authz_svnso

mod_dav_svnso

查看版本

# svnserve --version

2 代码库创建:

安装完成后要建立SVN库

# mkdir -p /opt/svn/repositories

# svnadmin create /opt/svn/repositories

执行后,自动建立repositories库,查看/opt/svn/repositories文件夹包含了conf,db,format,hooks,locks,READMEtxt等文件,说明一个SVN库已经建立。

3 配置版本库:

进入上面conf文件夹下,进行配置:

a 用户密码passwd配置:

# vi + passwd //+表示光标放在文件最低端

修改passwd为一下内容:

[users]

# harry = harryssecret

# sally = sallyssecret

zhoulf=123456

b 权限控制authz配置:

# vi + authz

设置哪些用户可以访问哪些目录,向authz文件追加以下内容:

[/]

zhoulf=rw //给该用户访问所有库的权限

[repositories:/project] //repository库的根目录权限

zhoulf=rw

/ 表示根目录及以下,根目录是svnserve启动时指定的,我们指定的是/opt/svn;/ 就是指对全部版本库都具有权限

repositories:/ 表示对库repositories的根目录设置权限

PS:

权限配置文件中出现的用户名必须已在用户配置文件中定义。

对权限配置文件的修改立即生效,不必重启svn。

c 服务svnservecon配置:

# vi + svnserveconf

添加一下内容:

[general]

#匿名访问的权限,可以是read,write,none,默认为read

anon-access=none

#使授权用户有写权限

auth-access=write

#密码数据库的路径

password-db=passwd

#访问控制文件

authz-db=authz

#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字

realm=/opt/svn/repositories

这里注意各标签不能错,也不能有重复,不然无法连接。

d 配置防火墙端口(如果需要):

不一定每个人都需要设置,可以先测试后再看是否需要打开端口

# vi /etc/sysconfig/iptables

添加一下内容:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT

保存后重启防火墙

# service iptables restart

4 查看:

a 启动SVN

# svnserve -d -r /opt/svn/repositories

b 查看SVN进程

# ps -ef|grep svn|grep -v grep

root 12538 1 0 14:40 00:00:00 svnserve -d -r /opt/svn/repositories

c 检测SVN端口

# netstat -ln |grep 3690

tcp 0 0 0000:3690 0000: LISTEN

5 停止重启SVN:

# killall svnserve //停止

# svnserve -d -r /opt/svn/repositories // 启动

6 测试连接:

使用TortoiseSVN进行测试:

1 SVN服务启动后,需要使用客户端测试连接:

    客户端连接地址:svn://19216815231;然后,输入用户名密码;

2 新建一个文件夹,即本地的库文件夹,右键checkout,将会得到一个隐藏文件夹svn;

3 在此文件夹中放入项目内容,然后右键点击commit,就可以上传本地项目了。

如何在Linux服务器上部署Net Core?Net Core是Net Framework的新一代版本,对于新手来说,将Net Core部署在Linux服务器上是一件相当困难的事,为了帮助大家解决困难,今天小编要给大家分享如何在Linux服务器上部署Net Core?

1、简介

一直以来,微软只对自家平台提供NET支持,这样等于让这个“理论上”可以跨平台的框架在Linux和macOS上的支持只能由第三方项目提供(比如Mono NET)。直到微软推出完全开源的NET Core。这个开源的平台兼容NET Standard,并且能在Windows、Linux和MacOS上提供完全一致的API。虽然这个小巧的NET框架只是标准NET的一个子集,但是已经相当强大了。

一方面,这个小巧的框架可以让某些功能性应用同时运行在三个平台上(就像某些功能性的Python脚本一样),另一方面,这也可以让服务器运维人员将ASP NET服务程序部署在Linux服务器上(特别是对于运行Windows Server较为吃力的服务器)。

2、部署NET Core

由于我没有可用的macOS设备,我将仅用Linux(服务器)作示范。我作示范的服务器是CentOS7操作系统。

SSH连接至服务器,安装NET Core的依赖项:

然后从微软官方获取NET Core的主程序:

如果你的服务器不能正确访问这个地址,你可能需要手动访问后面的地址,下载完毕之后,用任意一种方法传递进服务器,并命名为dotnettargz。

执行指令将组件解压至指定的位置:

创建链接以在任何路径下直接引用dotnet指令:

至此,NET Core框架应该就在你的服务器上搭建好了。

3、尝试部署一个ASP NET服务程序

在本地计算机上,修改Visual Studio功能,确保这一项是被安装的:

启动Visual Studio,新建一个ASP NET Core项目:

类型选择Web应用程序。我们不对示例作太大的修改,仅仅是为了演示ASP NET运行于NET Core的状况。在项目资源管理器内打开Programcs,依然是熟悉的C#代码:

为了能正常运行,我们稍稍修改代码,让host的对象初始化器看起来是这个样子:

保存工程,将整个解决方案上传至服务器。再次连接服务器,导航到你存放工程文件的目录下,执行指令:

该指令指挥NET Core恢复这个工程引用的包,耐心等待指令执行完毕。

接着,执行指令:

这条指令将使NET Core编译并运行这个工程。控制台没有错误信息并产生类似输出,你的ASP NET Core应用程序就应该在正确运行了:

试着在任意设备上访问你服务器的IP地址(或者域名),如果能正确加载默认页面,你的NET Core环境就算部署完毕了:

这个NET框架只是NET标准的一个子集,不一定能100%兼容一个复杂的ASP NET服务程序。但是利用这个框架,你可以把服务器切换至Linux系统,却仍然采用ASP NET作为服务程序的具体实现方法。你也不必为了调试运行于Linux的服务程序而专门去配置一个Linux工作环境——因为NET Core也可以运行在Windows上,Visual Studio本身就支持使用IIS Express来本地调试一个ASP NET Core应用程序。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » java项目怎么部署到linux服务器啊?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情