https://download.openvz.org/template/precreated/centos-6-x86_64-minimal.tar.gzLNMTP软件包(源码包)Nginx:http://nginx.org/download/nginx-1.8.1.tar.gz
MySQL:http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.29.tar.gz
Tomcat:http://apache.opencas.org/tomcat/tomcat-8/v8.0.33/bin/apache-tomcat-8.0.33.tar.gz
JDK(RPM):http://download.oracle.com/otn-pub/java/jdk/8u77-b03/jdk-8u77-linux-x64.rpm
PHP:http://cn2.php.net/distributions/php-5.6.20.tar.bz2epel扩展源RHEL7: http://mirrors.neusoft.edu.cn/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
RHEL6: http://mirrors.opencas.cn/epel/6/i386/epel-release-6-8.noarch.rpm基于CentOS7安装Docker| System: CentOS7.2 Hostname: dime.huangming.orgIPADDR: 192.168.1.15 |
| [root@dime ~]# yum install docker -y[root@dime ~]# systemctl start docker.service[root@dime ~]# systemctl enable docker.service |
| # cat centos-6-x86_64-minimal.tar.gz | docker import - centos-6-x86_64 |
[root@dime source]# cat centos-6-x86_64-minimal.tar.gz | docker import - centos-6-x86_64
7996b1e6f7eaac8034f414c3c9c232dcefe515262056847f68da51252be50cde
[root@dime source]# docker p_w_picpaths ;查看docker镜像
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
centos-6-x86_64 latest 7996b1e6f7ea 41 seconds ago 326.4 MB[root@dime ~]# ssh-keygen -t rsa -b 2048
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
2e:8b:d0:af:38:83:ba:b2:39:a8:2c:e3:04:48:e7:02 root@dime.huangming.org
The key's randomart p_w_picpath is:
+--[ RSA 2048]----+
| |
| |
|E. . |
|+ o |
|o. . S |
|. .. . |
|.o. . . . |
|X.oo o o |
|%B.oo.o |
+-----------------+
[root@dime ~]# ls ~/.ssh/
id_rsa id_rsa.pub known_hosts| [root@dime ~]# cat ~/.ssh/id_rsa.pub > /root/dockerdir/authorized_keys[root@dime ~]# chmod 600 /root/dockerdir/authorized_keys |
[root@dime dockerdir]# ls
apache-tomcat-8.0.33.tar.gz Dockerfile libiconv-1.14.tar.gz
authorized_keys jdk-8u65-linux-x64.rpm mysql-5.6.29.tar.gz
centos-6-x86_64-minimal.tar.gz jpegsrc.v6b.tar.gz nginx-1.8.1.tar.gz
cmake-3.4.3.tar.gz libgd-2.1.1.tar.bz2 php-5.6.20.tar.bz2| #######################################################################FROM centos-6-x86_64MAINTAINER huangming <741616710@qq.com>#Install opensshRUN yum install -y openssh-serverRUN mkdir /root/.sshCOPY ./authorized_keys /root/.ssh/authorized_keysRUN sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config#Install MySQLRUN yum install -y gcc gcc-c++ make automakeCOPY ./cmake-3.4.3.tar.gz .RUN mkdir -p /usr/local/cmakeRUN tar zxf cmake-3.4.3.tar.gzRUN cd cmake-3.4.3 && ./bootstrap && make && make installRUN groupadd mysql; useradd -r -g mysql mysqlRUN mkdir /usr/local/mysql; mkdir /data/mysql/db -pRUN yum install gcc gcc-c++ ncurses-devel bison bison-devel -yCOPY ./mysql-5.6.29.tar.gz .RUN tar zxf mysql-5.6.29.tar.gzRUN cd mysql-5.6.29 && cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql/db -DSYSCONFDIR=/etc -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DEXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_general_ci -DWITH-MYSQLD-LDFLAGS=-all-static -DWITH-CLIENT-LD-FLAGS=-all-static -DWITH_DEBUG=0 && gmake && gmake installRUN chown -R root:mysql /usr/local/mysql/ && chown -R mysql:mysql /data/mysql/db/RUN cd /mysql-5.6.29/scripts && chmod 755 mysql_install_db.shRUN /mysql-5.6.29/scripts/mysql_install_db.sh --basedir=/usr/local/mysql --datadir=/data/mysql/db --no-defaults --user=mysqlRUN cd /mysql-5.6.29/support-files/ && cp my-default.cnf /etc/my.cnf && cp mysql.server /etc/init.d/mysqldRUN chmod 755 /etc/init.d/mysqld && chkconfig mysqld onRUN echo -e '#!/bin/bash\nexport PATH=$PATH:/usr/local/mysql/bin' >/etc/profile.d/mysql.shRUN source /etc/profile#Install NginxRUN yum install zlib pcre pcre-devel openssl openssl-devel -yRUN useradd -s /sbin/nologin nginxCOPY ./nginx-1.8.1.tar.gz .RUN mkdir /usr/local/nginxRUN tar zxf nginx-1.8.1.tar.gzRUN cd /nginx-1.8.1/ && ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-pcre --with-http_realip_module --with-http_sub_module && make && make installRUN nginx -t#Install php package dependencyRUN rpm -ivh http://mirrors.opencas.cn/epel/6/i386/epel-release-6-8.noarch.rpmRUN yum -y install libpng-devel libtool libxslt-devel png bzip2 bzip2-devel libxml2-devel libXpm-devel curl-devel libmcrypt expat libxslt freetype freetype-devel libmcrypt-devel autoconf libpng zlib-devel zlib COPY ./libiconv-1.14.tar.gz .RUN mkdir /usr/local/libiconv && tar zxf libiconv-1.14.tar.gzRUN cd /libiconv-1.14 && ./configure --prefix=/usr/local/libiconv && make && make install && cd /COPY ./jpegsrc.v6b.tar.gz .RUN mkdir /usr/local/jpeg6 && mkdir /usr/local/jpeg6/{bin,lib,include,man} && mkdir /usr/local/jpeg6/man/man1RUN tar zxf jpegsrc.v6b.tar.gzRUN cp -r /usr/share/libtool/config/config.sub /jpeg-6b && cp /usr/share/libtool/config/config.guess /jpeg-6bRUN cd /jpeg-6b && ./configure --prefix=/usr/local/jpeg6 --enable-shared --enable-static && make && make install && cd /COPY ./libgd-2.1.1.tar.bz2 .RUN mkdir /usr/local/libgd2 && tar jxf libgd-2.1.1.tar.bz2RUN cd /libgd-2.1.1 && ./configure --prefix=/usr/local/libgd2 --with-zlib --with-jpeg=/usr/local/jpeg6 --with-png --with-freetype && make && make install && cd /#Install phpRUN useradd -s /sbin/nologin php-fpmCOPY ./php-5.6.20.tar.bz2 .RUN tar xjf php-5.6.20.tar.bz2RUN cd /php-5.6.20 && ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=php-fpm --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-freetype-dir --with-jpeg-dir=/usr/local/jpeg6 --with-mcrypt --with-gd=/usr/local/libgd2 --with-iconv-dir=/usr/local/libiconv --with-png-dir --with-zlib --with-libxml-dir --with-curl --with-mhash --with-openssl --with-pear --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-exif --enable-sockets --with-gettext --enable-ftp --disable-ipv6 --enable-bcmath --enable-shmop --enable-sysvsem --with-pcre-dir && make && make installRUN cp /php-5.6.20/php.ini-production /usr/local/php/etc/php.iniRUN cp /php-5.6.20/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm && chmod 755 /etc/init.d/php-fpmRUN cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.confRUN /usr/local/php/sbin/php-fpm -t#Install JDKCOPY ./jdk-8u65-linux-x64.rpm .RUN rpm -ivh jdk-8u65-linux-x64.rpmRUN echo -e 'export JAVA_HOME=/usr/java/latest\nexport PATH=$JAVA_HOME/bin:$PATH' > /etc/profile.d/java.shRUN . /etc/profile.d/java.sh#Install TomcatCOPY ./apache-tomcat-8.0.33.tar.gz .RUN tar zxf apache-tomcat-8.0.33.tar.gz -C /usr/local/RUN cd /usr/local/ && ln -sv apache-tomcat-8.0.33 tomcatRUN echo -e 'export CATALNA_HOME=/usr/local/tomcat\nexport PATH=$CATALNA_HOME/bin:$PATH' > /etc/profile.d/tomcat.shRUN source /etc/profileRUN cd / && rm -rf jdk-8u65-linux-x64.rpm mysql-5.6.29* jpeg* libgd* php-5.6.20* nginx-1.8.1* libiconv-1.14* cmake-3.4.3* apache-tomcat-8.0.33* EXPOSE 80 8080 3306 22 |
| # docker build -t centos_lnmpt . #“.”表示Dockerfile文件,镜像名字为centos_nmpt |
[root@dime dockerdir]# docker build -t centos_lnmpt .
......(过程)
Removing intermediate container 9365447c603d
Successfully built 24eb1588647f4、查看生成的镜像docker p_w_picpaths[root@dime ~]# docker p_w_picpaths
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
centos_lnmpt latest 24eb1588647f 21 minutes ago 6.089 GB
centos_nmpt latest d166614dc0f5 About an hour ago 6.089 GB
centos-6-x86_64 latest 7996b1e6f7ea 10 hours ago 326.4 MBStep4:使用centos_lnmpt镜像运行一个容器1、开启一个Docker容器docker run -itd -P --name=name p_w_picpath-i : 表示让容器的标准输入打开-t : 表示分配一个伪终端-d : 表示让容器在后台运行-P : 表示宿主机以随机分配的端口逐一映射容器暴露的端口-p : 表示自定义宿主机一个或多个端口映射容器暴露的端口--name : 表示指定容器的名字,容器的名字具有与ID一样的特性| [root@dime dockerdir]# docker run -itd -P --name=dnode1 centos_lnmpt bash 3f63e6ba4d83fa7eb1e877edc630e15b64e60e2bc373714fc753c1abb8274b0b [root@dime dockerdir]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES3f63e6ba4d83 centos_lnmpt "bash" 2 minutes ago Up 2 minutes 0.0.0.0:32775->22/tcp, 0.0.0.0:32774->80/tcp, 0.0.0.0:32773->3306/tcp, 0.0.0.0:32772->8080/tcp dnode1 |
| [root@dime ~]# docker run -itd -p 33322:22 -p 33380:80 -p 33306:3306 -p 38080:8080 --name=dnode2 centos_lnmpt bash499c9a0bc965677a2ae2a238fc05dc4ec81920661bb1ba12b6933ce0176f3b55 [root@dime ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES499c9a0bc965 centos_lnmpt "bash" 4 minutes ago Up 4 minutes 0.0.0.0:33322->22/tcp, 0.0.0.0:33380->80/tcp, 0.0.0.0:33306->3306/tcp, 0.0.0.0:38080->8080/tcp dnode23f63e6ba4d83 centos_lnmpt "bash" About an hour ago Up About an hour 0.0.0.0:32775->22/tcp, 0.0.0.0:32774->80/tcp, 0.0.0.0:32773->3306/tcp, 0.0.0.0:32772->8080/tcp dnode1 |
#进入dnode1容器
[root@dime dockerdir]# docker exec -it dnode1 bash
[root@3f63e6ba4d83 /]# ls /usr/local/
apache-tomcat-8.0.33 doc include lib64 libiconv php src
bin etc jpeg6 libexec mysql sbin tomcat
cmake games lib libgd2 nginx share
#启动Nginx
[root@3f63e6ba4d83 /]# nginx
[root@3f63e6ba4d83 /]# ss -ntl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:80 *:*#进入dnode2容器
[root@dime ~]# docker exec -it dnode2 bash
#启动Tomcat
[root@a405702fbe84 /]# catalina.sh start
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/java/latest
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@a405702fbe84 /]# ss -ntl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 1 ::ffff:127.0.0.1:8005 :::*
LISTEN 0 100 :::8009 :::*
LISTEN 0 100 :::8080 :::*

#dnode1
[root@3f63e6ba4d83 /]# service sshd start
Generating SSH2 RSA host key: [ OK ]
Generating SSH1 RSA host key: [ OK ]
Generating SSH2 DSA host key: [ OK ]
Starting sshd: [ OK ]
[root@3f63e6ba4d83 /]# exit
exit
#dnode2
[root@a405702fbe84 /]# service sshd start
Generating SSH2 RSA host key: [ OK ]
Generating SSH1 RSA host key: [ OK ]
Generating SSH2 DSA host key: [ OK ]
Starting sshd: [ OK ]
[root@a405702fbe84 /]# exit
exit[root@dime ~]# ssh root@192.168.1.15 -p 32775
The authenticity of host '[192.168.1.15]:32775 ([192.168.1.15]:32775)' can't be established.
RSA key fingerprint is 36:34:32:82:25:ba:6b:e4:b9:40:7e:98:a2:6d:de:3c.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.1.15]:32775' (RSA) to the list of known hosts.
[root@3f63e6ba4d83 ~]#
[root@dime ~]# ssh root@192.168.1.15 -p 33322
The authenticity of host '[192.168.1.15]:33322 ([192.168.1.15]:33322)' can't be established.
RSA key fingerprint is 2e:18:d1:0c:26:cb:d2:2d:37:9a:0d:a7:6d:0d:1e:2c.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.1.15]:33322' (RSA) to the list of known hosts.
[root@499c9a0bc965 ~]#出于纯粹的兴趣,我很好奇如何按顺序创建PI,而不是在过程结果之后生成数字,而是让数字在过程本身生成时显示。如果是这种情况,那么数字可以自行产生,我可以对以前看到的数字实现垃圾收集,从而创建一个无限系列。结果只是在Pi系列之后每秒生成一个数字。这是我通过互联网筛选的结果:这是流行的计算机友好算法,类机器算法:defarccot(x,unity)xpow=unity/xn=1sign=1sum=0loopdoterm=xpow/nbreakifterm==0sum+=sign*(xpow/n)xpow/=x*xn+=2sign=-signendsumenddefcalc_pi(digits
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
使用带有Rails插件的vim,您可以创建一个迁移文件,然后一次性打开该文件吗?textmate也可以这样吗? 最佳答案 你可以使用rails.vim然后做类似的事情::Rgeneratemigratonadd_foo_to_bar插件将打开迁移生成的文件,这正是您想要的。我不能代表textmate。 关于ruby-使用VimRails,您可以创建一个新的迁移文件并一次性打开它吗?,我们在StackOverflow上找到一个类似的问题: https://sta
我对最新版本的Rails有疑问。我创建了一个新应用程序(railsnewMyProject),但我没有脚本/生成,只有脚本/rails,当我输入ruby./script/railsgeneratepluginmy_plugin"Couldnotfindgeneratorplugin.".你知道如何生成插件模板吗?没有这个命令可以创建插件吗?PS:我正在使用Rails3.2.1和ruby1.8.7[universal-darwin11.0] 最佳答案 随着Rails3.2.0的发布,插件生成器已经被移除。查看变更日志here.现在
我正在尝试在我的centos服务器上安装therubyracer,但遇到了麻烦。$geminstalltherubyracerBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingtherubyracer:ERROR:Failedtobuildgemnativeextension./usr/local/rvm/rubies/ruby-1.9.3-p125/bin/rubyextconf.rbcheckingformain()in-lpthread...yescheckingforv8.h...no***e
如何使用RSpec::Core::RakeTask初始化RSpecRake任务?require'rspec/core/rake_task'RSpec::Core::RakeTask.newdo|t|#whatdoIputinhere?endInitialize函数记录在http://rubydoc.info/github/rspec/rspec-core/RSpec/Core/RakeTask#initialize-instance_method没有很好的记录;它只是说:-(RakeTask)initialize(*args,&task_block)AnewinstanceofRake
关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭8年前。Improvethisquestion为什么SecureRandom.uuid创建一个唯一的字符串?SecureRandom.uuid#=>"35cb4e30-54e1-49f9-b5ce-4134799eb2c0"SecureRandom.uuid方法创建的字符串从不重复?
我正在阅读SandiMetz的POODR,并且遇到了一个我不太了解的编码原则。这是代码:classBicycleattr_reader:size,:chain,:tire_sizedefinitialize(args={})@size=args[:size]||1@chain=args[:chain]||2@tire_size=args[:tire_size]||3post_initialize(args)endendclassMountainBike此代码将为其各自的属性输出1,2,3,4,5。我不明白的是查找方法。当一辆山地自行车被实例化时,因为它没有自己的initialize方法
我正在尝试按0-9和a-z的顺序创建数字和字母列表。我有一组值value_array=['0','1','2','3','4','5','6','7','8','9','a','b','光盘','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','','u','v','w','x','y','z']和一个组合列表的数组,按顺序,这些数字可以产生x个字符,比方说三个list_array=[]和一个当前字母和数字组合的数组(在将它插入列表数组之前我会把它变成一个字符串,]current_combo['0','0','0']
这篇文章是继上一篇文章“Observability:从零开始创建Java微服务并监控它(一)”的续篇。在上一篇文章中,我们讲述了如何创建一个Javaweb应用,并使用Filebeat来收集应用所生成的日志。在今天的文章中,我来详述如何收集应用的指标,使用APM来监控应用并监督web服务的在线情况。源码可以在地址 https://github.com/liu-xiao-guo/java_observability 进行下载。摄入指标指标被视为可以随时更改的时间点值。当前请求的数量可以改变任何毫秒。你可能有1000个请求的峰值,然后一切都回到一个请求。这也意味着这些指标可能不准确,你还想提取最小/