首页 文章 精选 留言 我的

精选列表

搜索[搭建],共10000篇文章
优秀的个人博客,低调大师

使用docker快速搭建gitlab私服

下载镜像 docker pull gitlab/gitlab-ce 使用镜像 镜像中有三个目录用于保存gitlab的数据,出于安全考虑,应该使宿主机目录挂载这三个卷做持久化存储。如果出错保证数据不会丢失。 /etc/gitlab 包含gitlab的配置文件 /var/opt/gitlab gitlab使用的仓库保存所有版本库 /var/log/gitlab gitlab的日志目录 docker run --name gitlab -d \ -v /gitlab/config:/etc/gitlab \ -v /gitlab/repo:/var/opt/gitlab \ -v /gitlab/log:/var/log/gitlab \ -p 2222:22 -p80:80 -p 433:433 \ gitlab/gitlab-ce 为了防止宿主机的22端口被占用,这里使用2222端口映射。 配置ssh 另外还需要配置 vim ~/.ssh/config HOST gitlab.xxx.com HOSTNAME gitlab.xxx.com port 2222 接下来就可以使用了

优秀的个人博客,低调大师

Docker搭建Oracle数据库

欢迎关注大数据和人工智能技术文章发布的微信公众号:清研学堂,在这里你可以学到夜白(作者笔名)精心整理的笔记,让我们每天进步一点点,让优秀成为一种习惯! 使用 sudo docker search Oracle 命令搜索Oracle数据库镜像文件,这里发现已经有人发布了相关镜像,链接:https://hub.docker.com/r/sath89/oracle-12c/,直接按照说明,使用pull命令下载镜像。下载完成后如下所示: 下载镜像之后,我们 需要参照作者的说明启动数据库,第一次启动需要对数据库进行配置,首先使用命令 sudo docker run -d -p 8080:8080 -p 1521:1521 sath89/oracle-12c 启动镜像,并映射相关端口,这里是8080和1521端口这是我们可以去查看docker的日志文件:当我们输入docker logs -f 镜像id后,会输出这个镜像操作的日志文件,等待5分钟左右,Oracle会启动成功,并且没有出现报错。这是,我们可以进入镜像的bash对数据库进行进一步的操作:如图所示,我们可以看到,使用docker的exec命令进入镜像的bash,并且查看了镜像启动的端口信息。查看Oracle的service_names,转到Oracle的HOME目录下:Cd $ORACLE_HOME使用dba账户登录Oracle到此为止,说明Oracle的docker镜像安装启动完毕,接下来配置Oracle的客户端。下载pl/sql客户端:https://www.allroundautomations.com/bodyplsqldevreg.html下载Oracle客户端:http://www.oracle.com/technetwork/topics/winx64soft-089540.html安装pl/sql客户端,这个不需要特别配置,接下来配置Oracle客户端.将下载的Oracle客户端文件解压,并放在特定目录下,这里以D盘为例。1、新建ORACLE_HOME环境变量:2、新建NLS_LANG环境变量,将值设置为:SIMPLIFIED CHINESE_CHINA.ZHS16GBK 3、新建TNS_ADMIN环境变量,将值设置为admin目录,这个admin目录需要自己在Oracle客户端的目录下自己创建。然后将D:\oraclient目录添加到path环境变量下。接下来,在新建的admin目录下创建一个tnsnames.ora的文件,写入文件配置: MyDB= (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST= 192.168.83.135)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = xe) ) ) host是服务器地址,port是Oracle端口,这里需要注意SERVICE_NAME,即是我们在前面查看到的service_name的值。然后打开plsql客户端填写Oracle用户名密码进行登录,登录成功就可以进行数据库操作了。

优秀的个人博客,低调大师

Docker学习之搭建JavaWeb环境

自上次从北京参加阿里云社区开发者进阶大会回来,就萌发了学习Docker的种子,尽管公司现在的业务并没有什么需求,但学习先进的东西总没有坏处。 2017年,Docker 四周岁啦!尽管之前有所耳闻,但是并没有机会和时间去接触,正好手里躺着两台服务器,趁着年底系统的学习一下,自此接触并认识小鲸鱼。 回顾 上一篇文章大体对Docker有了一定的认识和了解,Docker学习,并从阿里云官方镜像拉取了一个centos镜像。今天,来学下Docker容器如何配置一个JavaWeb环境。 配置 首先查看是否有容器或者在运行,然后启动并进入容器: # 查看所有容器 docker ps -a # 查看运行中的容器 docker ps # 启动容器 docker start 容器名或ID # 进入容器 docker attach 容器名或ID 安装JDK,这里我们直接使用YUM安装(简单方便与官方的基本没什么差别): yum install java -y 安装完成,如果没有错误,执行以下命令检查是否安装成功: java -version 安装Tomcat容器,这里我们下载官方的Tomcat8: # 下载 wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-8/v8.5.24/bin/apache-tomcat-8.5.24.tar.gz # 解压 tar -zvf apache-tomcat-8.5.24.tar.gz # 重命名 mv apache-tomcat-8.5.24 tomcat8 # 切换的执行目录 cd tomcat8/bin # 启动容器 ./startup.sh 启动后,切换到logs目录查看日志是否启动成功: tail -100f catalina.out 访问 以上配置完成以后,那么我们如何访问容器中的服务呢?由于母鸡中安装配置了OpenResty,我们可以使用OpenResty做代理服务访问我们容器内部的服务。 首先我们命令查看容器的内网IP: # 查询单个容器的IP docker inspect <container id> # 或者查询所有容器的IP docker inspect -f '{{.Name}} - {{.NetworkSettings.IPAddress }}' $(docker ps -aq) 然后通过Nginx代理配置: server { listen 80; server_name docker.52itstyle.com; charset utf-8; location / { default_type text/html; proxy_pass http://172.18.0.2:8080; } } 最终访问地址:http://docker.52itstyle.com/ 快捷 当然,如果你不想一步步配置JavaWeb运行环境,你可以执行执行以下命令获取现成的打包镜像: #阿里镜像 docker login --username=admin@52itstyle.com registry.cn-hangzhou.aliyuncs.com # 获取 tomcat8版本 docker pull tomcat:8 作者: 小柒 出处: https://blog.52itstyle.com 分享是快乐的,也见证了个人成长历程,文章大多都是工作经验总结以及平时学习积累,基于自身认知不足之处在所难免,也请大家指正,共同进步。

优秀的个人博客,低调大师

Centos7搭建Hadoop服务

下载Hadoop 官网:http://hadoop.apache.org/releases.html 先配置jdk环境(教程:https://www.idaobin.com/archives/117) 下载以后 解压到到/usr/local tar -zxvf hadoop-2.8.0.tar.gz -C /usr/local 为了方便操作 把hadoop-2.8.0 改为hadoop mv /usr/local/hadoop-2.8.0 /usr/local/hadoop 查看主机名 hostname //第一个参数为主机名 检查是否可以免密码 ssh localhost //这里的localhost为主机名 注意:一般初次安装都需要密码 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 再次验证 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 注意:如没有Enter password 就说明免密码了 配置环境变量 vim /etc/profile 末尾添加 export HADOOP_HOME=/usr/local/hadoop export PATH=$JAVA_HOME/bin:$PATH:$HOME/bin:$HADOOP_HOME/bin 使环境变量立即生效 source /etc/profile 创建Hadoop的临时文件存放地 mkdir /usr/local/hadoop/tmp 编辑Hadoop的配置文件 cd /usr/local/hadoop/etc/hadoop/ vim hadoop-env.sh 末尾添加 export JAVA_HOME=/usr/local/java/jdk1.8.0_131/ export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop 注意:路径要对 使环境变量立即生效 source hadoop-env.sh 配置另一个文件 vim core-site.xml 在<configuration></configuration>中添加以下内容 <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>file:/usr/local/hadoop/tmp</value> </property> 配置下一个文件 hdfs-site.xml vim hdfs-site.xml 在<configuration></configuration>中添加以下内容 <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/data</value> </property> 配置下一个文件mapred-site.xml 因为这个文件默认不存在 我们把mapred-site.xml.template作为模板来配置 cp mapred-site.xml.template mapred-site.xml vim mapred-site.xml 在<configuration></configuration>中添加以下内容 <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> 配置下下个文件yarn-site.xml vim yarn-site.xml 在<configuration></configuration>中添加以下内容 <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> 配置最后一个文件yarn-env.sh vim yarn-env.sh 注意:在第23行左右 export JAVA_HOME (删除# 去掉注释),并更改正确jdk的路径 格式化namenode cd /usr/local/hadoop bin/hdfs namenode-format 注意:成功的话,会看到 “successfully formatted” 和 “Exitting withstatus 0” 的提示,若为 “Exitting with status 1” 则是出错了 通过脚本启动hdfs sbin/start-dfs.sh 打开浏览器访问http://localhost:50070,验证是否hdfs配置成功 再来启动yarn sbin/start-yarn.sh 打开浏览器访问http://localhost:8088,验证yarn是否配置成功 注意:由于浏览器存在缓存问题 打开地址可能会失败关闭浏览器 重新打开一两次就好,如果还是失败 检查配置文件是否有误 查看已启动的hadoop进程 jps 注意:如果没有 NameNode 或 DataNode ,那就是配置不成功

优秀的个人博客,低调大师

memcached演练(1) 搭建memcached服务

memcached已经火了好多年了,现在网上关于memcached的资源相当多了,我就不浪费话语了。干脆写一个实战系列,坚持一切用实施说话。 环境介绍 Linux虚拟机 内核信息 [root@hadoop1 ~]# uname -a Linux hadoop1 2.6.32-358.el6.i686 内存:1G 安装过程 1.准备编译环境,安装必须的gcc,make工具,如果没有安装yum,最好安装下。网上有很多共享的yum源。 2.下载最新版本的libevent 1 #wgethttps://github.com/libevent/libevent/releases/download/release-2.0.22-stable/libevent-2.0.22-stable.tar.gz 3.解压libevent对应压缩包 1 #tarzxvflibevent-2.0.22-stable.tar.gz 解压之后的文件路径:/u01/software/libevent-2.0.22-stable 3.编译libevent 1 2 3 4 5 6 $ cd /u01/software/libevent-2 .0.22-stable $. /configure -prefix= /usr/local/libevent $ make $ make install 确认安装结果 $ ls -al /usr/local/lib | grep libevent 4.下载最新版本的memcached 1 $wgethttp: //memcached .org /latest 5.解压memcached对应压缩包 1 $ tar zxvfmemcached-1.4.29. tar .gz 解压之后的文件路径:/u01/software/memcached-1.4.29 6.编译memcached 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 $ cd /u01/software/memcached-1 .4.29 $[root@hadoop1memcached-1.4.29] #./configure-help `configure'configuresmemcached1.4.29toadapttomanykindsofsystems. Usage:. /configure [OPTION]...[VAR=VALUE]... Configuration: -h,--helpdisplaythishelpand exit --help=shortdisplayoptionsspecifictothispackage --help=recursivedisplaytheshorthelpofalltheincludedpackages -V,--versiondisplayversioninformationand exit -q,--quiet,--silent do notprint`checking...'messages --cache- file =FILEcache test results in FILE[disabled] -C,--config-cache alias for `--cache- file =config.cache' -n,--no-create do notcreateoutputfiles --srcdir=DIR find thesources in DIR[configure dir or`..'] Installationdirectories: --prefix=PREFIX install architecture-independentfiles in PREFIX [ /usr/local ] ... Finetuningoftheinstallationdirectories: --bindir=DIRuserexecutables[EPREFIX /bin ] --sbindir=DIRsystemadminexecutables[EPREFIX /sbin ] --libexecdir=DIRprogramexecutables[EPREFIX /libexec ] --sysconfdir=DIR read -onlysingle-machinedata[PREFIX /etc ] --sharedstatedir=DIRmodifiablearchitecture-independentdata[PREFIX /com ] --localstatedir=DIRmodifiablesingle-machinedata[PREFIX /var ] --libdir=DIRobjectcodelibraries[EPREFIX /lib ] --includedir=DIRCheaderfiles[PREFIX /include ] --oldincludedir=DIRCheaderfiles for non-gcc[ /usr/include ] --datarootdir=DIR read -onlyarch.-independentdataroot[PREFIX /share ] --datadir=DIR read -onlyarchitecture-independentdata[DATAROOTDIR] --infodir=DIRinfodocumentation[DATAROOTDIR /info ] --localedir=DIRlocale-dependentdata[DATAROOTDIR /locale ] --mandir=DIR man documentation[DATAROOTDIR /man ] --docdir=DIRdocumentationroot[DATAROOTDIR /doc/memcached ] --htmldir=DIRhtmldocumentation[DOCDIR] --dvidir=DIRdvidocumentation[DOCDIR] --pdfdir=DIRpdfdocumentation[DOCDIR] --psdir=DIR ps documentation[DOCDIR] OptionalPackages: --with-PACKAGE[=ARG]usePACKAGE[ARG= yes ] --without-PACKAGE do notusePACKAGE(sameas--with-PACKAGE=no) --with-libevent=PATHSpecifypathtolibeventinstallation #./configure--prefix=/usr/local/memcached--with-libevent=/usr/local/lib/ #make #makeinstall 这时候memcached安装成功了 启动memcached 1 $ /usr/local/memcached/bin/memcached 报错 error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory 解决思路 ##跟踪运行memcached所有加载库文件的路径 1 2 3 4 5 6 7 8 9 10 11 12 13 $LD_DEBUG=libsLD_DEBUG=libs. /memcached - v 15862: find library=libevent-2.0.so.5[0];searching 15862:searchcache= /etc/ld .so.cache 15862:searchpath= /lib/tls/i686/sse2 : /lib/tls/i686 : /lib/tls/sse2 : /lib/tls : /lib/i686/sse2 : /lib/i686 : /lib/sse2 : /lib : /usr/lib/tls/i686/sse2 : /usr/lib/tls/i686 : /usr/lib/tls/sse2 : /usr/lib/tls : /usr/lib/i686/sse2 : /usr/lib/i686 : /usr/lib/sse2 : /usr/lib (systemsearchpath) 15862:trying file = /lib/tls/i686/sse2/libevent-2 .0.so.5 15862:trying file = /lib/tls/i686/libevent-2 .0.so.5 15862:trying file = /lib/tls/sse2/libevent-2 .0.so.5 15862:trying file = /lib/tls/libevent-2 .0.so.5 15862:trying file = /lib/i686/sse2/libevent-2 .0.so.5 15862:trying file = /lib/i686/libevent-2 .0.so.5 15862:trying file = /lib/sse2/libevent-2 .0.so.5 15862:trying file = /lib/libevent-2 .0.so.5 ... 首先确认建立软连接 1 2 3 4 $ ls /usr/local/lib/libevent-2 .0.so.5 /usr/local/lib/libevent-2 .0.so.5 $ ln -s /usr/local/lib/libevent-2 .0.so.5 /usr/lib/i686/libevent-2 .0.so.5 如果以root用户登陆,必须指定-u参数 1 $ /usr/local/memcached/bin/memcached -uhadoop 确认memcached是否启动成功 1 2 3 4 5 6 $ ps -ef| grep memcached hadoop158914034022:45pts /4 00:00:00 /usr/local/memcached/bin/memcached -uhadoop root1589915561022:45pts /5 00:00:00 grep memcached #netstat-tlnp|grepmemcached tcp000.0.0.0:112110.0.0.0:*LISTEN15891 /memcached tcp00:::11211:::*LISTEN15891 /memcached 最后telnet 确认下 1 2 3 4 5 6 7 8 $telnet127.0.0.111211 Trying127.0.0.1... Connectedto127.0.0.1. Escapecharacteris '^]' . stats STATpid15891 STATuptime86 STAT time 1470494793 OK。至此memcached1.4.9版本已经成功在机器上安装。个人感觉最麻烦的地方,就是处理libevent。 参考了很多资源,才把问题解决。 memcached设置自启动 为了方便,现将memcached执行变更下权限 最简单的启动方式 只需在/etc/rc.d/rc.local中加入一行 /usr/local/memcached/bin/memcached -d -m 20 -p 11211 -u hadoop 注意 -d:设置为后台进程 -u:指向用户 -p:端口 -m:内存 推荐的方式 2.1.拷贝memcached源码包的memcached.sysv拷贝到/etc/init.d,做为memcached的启动脚本 1 $ cp /u01/software/memcached-1 .4.29 /scripts/memcached .sysv /etc/init .d /memcached 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 [root@hadoop1bin] #vi/etc/init.d/memcached #!/bin/sh # #chkconfig:-5545 #description:Thememcacheddaemonisanetworkmemorycacheservice. #processname:memcached #config:/etc/sysconfig/memcached #Sourcefunctionlibrary. . /etc/rc .d /init .d /functions PORT=11211 USER=nobody MAXCONN=1024 CACHESIZE=64 OPTIONS= "" if [-f /etc/sysconfig/memcached ]; then . /etc/sysconfig/memcached fi #Checkthatnetworkingisup. if [ "$NETWORKING" = "no" ] then exit 0 fi RETVAL=0 prog= "memcached" start(){ echo -n$ "Starting$prog:" #insurethat/var/run/memcachedhasproperpermissions chown $USER /var/run/memcached daemonmemcached-d-p$PORT-u$USER-m$CACHESIZE-c$MAXCONN-P /var/run/memcached/memcached .pid$OPTIONS RETVAL=$? echo [$RETVAL- eq 0]&& touch /var/lock/subsys/memcached } stop(){ echo -n$ "Stopping$prog:" killprocmemcached RETVAL=$? echo if [$RETVAL- eq 0]; then rm -f /var/lock/subsys/memcached rm -f /var/run/memcached/memcached .pid fi } restart(){ stop start } #Seehowwewerecalled. case "$1" in start) start ;; stop) stop ;; status) statusmemcached ;; restart|reload) restart ;; condrestart) [-f /var/lock/subsys/memcached ]&&restart||: ;; *) echo $ "Usage:$0{start|stop|status|restart|reload|condrestart}" exit 1 esac exit $? 修改下面这一句(其实就将memcached 命令指向咱们的全路径) daemonmemcached-d -p $PORT -u $USER -m $CACHESIZE -c $MAXCONN -P /var/run/memcached/memcached.pid $OPTIONS daemon/usr/local/memcached/bin/memcached -d -p $PORT -u $USER -m $CACHESIZE -c $MAXCONN -P /var/run/memcached/memcached.pid $OPTIONS 配置自启动 1 2 3 [root@hadoop1bin]$chkconfigmemcachedon [root@hadoop1bin]$chkconfig| grep memcached memcached0:off1:off2:on3:on4:on5:on6:off 安装nc 1 [root@hadoop1yum.repos.d]$yum install nc memcached 自带的stats命令,对搜索不太友好。为了很好的搜索,借助nc工具。 比如,想查找connection相关的参数 1 2 3 4 [root@hadoop1yum.repos.d] #echostats|nc127.0.0.111211|grepconnection STATcurr_connections10 STATtotal_connections13 STATconnection_structures11 配合nc使用形式,个人参考网上资源,简单罗列下 1 2 3 watch "echostats|nc127.0.0.111211" printf "stats\r\n" |nc127.0.0.111211 echo stats|nc127.0.0.111211 ------------------------------------------------------------ The End 接下来,演练的内容是通过telnet命令行和JAVA 客户端工具,访问memcachd. 本文转自 randy_shandong 51CTO博客,原文链接:http://blog.51cto.com/dba10g/1835163,如需转载请自行联系原作者

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle

Oracle

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Eclipse

Eclipse

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。