centos7上搭建git仓库 如何将WebLogic服务器运行于Docker容器中?

[更新]
·
·
分类:互联网
1308 阅读

centos7上搭建git仓库

如何将WebLogic服务器运行于Docker容器中?

如何将WebLogic服务器运行于Docker容器中?

步骤1:为我们的容器创建第一个镜像
# 以 centos 镜像作为基础镜像,我们启动自己的容器并在其中执行/bin/bash命令
# 注:-t -i 参数用于创建一个虚拟的命令行。
sudo docker run -t -i centos /bin/bash
现在我们已经成功的运行了自己的第一个容器,并且进入到容器的命令行界面中。在容器中,我们执行下面的命令:
yum -y update # 更新软件包
yum install which # 安装which命令
yum install git # 安装Git
安装完成后,按 Ctrl d 来退出容器的命令行。
# 执行sudo docker ps -a,可以看到被我们终止的容器
CONTAINER ID IMAGE COMMAND CREATED……
da9031d3568f centos:6.4 /bin/bash 5 minutes ago…..
把我们所做的改变提交到一个新的容器:
# 这里我们创建一个自己的基础容器,容器中安装好了文章中所需的常用工具。读者的容器 id 可能与文章中的有所不同,以上一步 docker ps -a 的结果为准。
sudo docker commit da90 custom/base
容器成功提交后,执行 sudo docker images ,我们会看到刚才提交的容器(如下面的结果所示)。我们就以这个容器为基础容器,再来创建一个新的容器。
REPOSITORY TAG IMAGE ID CREATED
custom/base latest 05b6cecd370b 2 minutes ago
centos 6.4 539c0211cd76 10 months ago
centos latest 539c0211cd76 10 months ago…
步骤2:创建新的容器,并安装 apache
# 以 custom/base 容器为基础,运行一个新的容器。
sudo docker run -t -i custom/base /bin/bash
# 安装 httpd
yum install httpd
步骤3:再次提交新的容器
按 Ctrl d 来退出容器的命令行,然后执行命令:
# 这个命令会把步骤2中我们安装 httpd 带来的改变提交到新的名为 custom/httpd 的容器镜像中。你的容器 id 可能会和文章中有所不同,以 sudo docker ps -a 命令的结果为准。
sudo docker commit aa6e2fc0b94c custom/httpd
你应该已经发现了,我们创建了一个带有 http 服务器并可以复用的容器镜像。你可以根据这种思想,为自己所需的每个组件都创建一个容器,然后把这些容器复用于开发环境或者生产环境。
步骤7:运行 http 服务器
# -v will Mount a volume from VM to the container which was also shared from host to Vagrant VM.
# -v 参数把主机共享给虚拟机的一个卷挂载到容器中
# -p forward VM port 80 to container port 80 VM port 80 is mapped to host port 8080 in Vagrantfile
# -p 参数把虚拟机的80端口映射到容器的80端口;虚拟机的80端口在 Vagrantfile 中被绑定到主机的8080端口,也就是:主机8080-gt虚拟机80-gt容器80
sudo docker run -t -i -p 80:80 -v /vagrant/htdocs:/var/www/html custom/httpd /bin/bash
# 启动 Apache
apachectl -k start

CentOS8或RHEL8如何安装ifconfig命令?

对于一些常见的命令安装,其实非常的简单,但是大家的疑惑是找不到安装包的包名,而ifconfig命令是一个过时的命令,已经很长时间没有维护了,在centos7以后最小系统安装,是没有ifconfig命令的,下面说下怎么通过查询包名安装命令。
对于使用linux多年的人来说,已经习惯了使用ifconfig命令查看网络,但是它已经很多年没有维护了,可以使用yum软件仓库来安装ifconfig命令。[ ~]# ifconfig-bash: ifconfig: command not found
ifconfig不是一个单独的软件,直接使用yum install ifconfig是无法安装的,我们可以通过yum 过滤命令名称来找到命令的软件包,使用命令: yum provides */ifconfig
provides:查找提供给定值的包
*/ifconfig: *是通配符,匹配包含开头为任意字符包含 “/ifconfig”的名称
[ ~]# yum provides */ifconfig.....Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
net-tools-2.0-0.25.20131004git.el7.x86_64 : Basic networking tools
Repo : base
Matched from:
Filename : /sbin/ifconfig
从上图的查询结果可以看出ifconfig命令是在net-tools软件包中的,接下来就可以通过yum install net-tools 来安装ifconfig命令。
[ ~]# yum install net-tools对于linux如果缺少了某一个命令,而不知道软件包的命令,就可以通过yum的provides参数来查询具体的安装包名了。
比如安装:tee、dos2unix、tcpdump、nmap等等,下图查询到tee命令的安装包名称是coreutils,这时就可以使用yum install coreutils -y来安装tee命令。
技术延伸,虽然我们习惯了使用ifconfig命令,但是它已经过时了,那么有没有替代的命令呢?答案当然是有的,iproute2工具套件提供了许多增强行的命令,执行效率要高于net-tools套件的命令。
而且大多数的linux发行版已经默认预装了iproute2套件包,我们可以使用ip addr来代替ifconfig命令。
[ ~]# ip addr也可使用ip命令查看单独网卡信息:
[ ~]# ip addr show eth0
既然iproute2是一个套件同样提供多个增强型的命令从下图可以看出iproute2套件替代net-tools套件的对应命令,下面使用ss命令做一个执行效率对比。
比如:ss代替netstat命令
通过下图可以看出,netstat命令查看网络连接使用了0.014s。
而,ss命令使用0.005秒,在执行效率上高了接近3倍。
总之,使用yum provides 可以很容易的查询出命令的软件包名,这样就不会因为找不到命令而苦恼了。而iproute2套件提供了增强型的命令,大家可以尝试使用一下。
以上回答希望能够帮助到你,欢迎大家评论留言。