在Docker容器里安装webshpere

<!--前提:已经安装好了docker,能够正常使用。-->

(1)docker安装websphere(需要账号和密码登录,不挂载数据卷)

  1. 获取镜像:  docker pull  ibmcom/websphere-traditional:8.5.5.12-profile

    docker pull  #是将镜像拉取下来的命令,后面跟的是镜像名以及镜像版本信息
    ibmcom/websphere-traditional #websphere的镜像名
    8.5.5.12-profile #镜像的版本,也就是websphere的版本
  2. 使用镜像生成容器并且启动容器: 

    docker run --name websphere \

           -h websphere \

           -e UPDATE_HOSTNAME=true \

           -p 9043:9043 \

           -p 9443:9443 \

           --restart=always \

           -d ibmcom/websphere-traditional:8.5.5.12-profile

    docker run   #启动容器的命令,后面跟各种参数 + 容器镜像信息
    --name websphere #指定启动的容器名为 websphere
    -e UPDATE_HOSTNAME=true #访问websphere的ip不是localhost时需要此参数
    -p 9043:9043 #指定访问端口号
    -d ibmcom/websphere-traditional:8.5.5.12-profile #后台运行该镜像生成的容器
  3. 查看生成登录的密码: docker exec websphere cat /tmp/PASSWORD
    docker exec   #进入容器内部,访问容器
    websphere #指定的容器名
    cat /tmp/PASSWORD #输出容器内 /tmp/PASSWORD 文件中的内容 ,这条命令输出的内容就是用于登录的密码。
  4. 通过浏览器访问websphere:    https://172.150.13.40:9043/ibm/console/login.do?action=secure           
    172.150.13.40    #当前虚拟机的ip地址(每个人的都不一样)
    9043 #设定访问websphere的端口号
  5. 前面的步骤没出错,会进入如下登录页面

    
    
  6. 登录的账号和密码(登录的账号都是一样的,都是 wsadmin)

    账号 :    wsadmin
    密码 : 1+aIMDow (就是前面使用 docker exec websphere cat /tmp/PASSWORD 命令输出的内容,每个人的都不一样)

    登录成功后,进入websphere主页面。

如果忘记了websphere的密码,可以使用docker exec websphere cat /tmp/PASSWORD 命令来查看登录该容器的密码,账号都统一为 wsadmin。 (websphere为容器名)

如果容器启动不正常,可以使用 docker logs -f websphere 命令来查看容器启动的日志信息,确定错误原因。(websphere为容器名)

注意:websphere启动需要的时间会比较长,所以需要参考日志的输出来判断容器是否已经启动,不能立马访问,立马访问是不会有结果的。

(2)docker安装websphere(无需账号和密码登录,并且挂载数据卷到linux主机,映射到容器使用)    

  1.   获取镜像:  docker pull  ibmcom/websphere-traditional:8.5.5.12-profile   

    docker pull  #是将镜像拉取下来的命令,后面跟的是镜像名以及镜像版本信息
    ibmcom/websphere-traditional #websphere的镜像名
    8.5.5.12-profile #镜像的版本,也就是websphere的版本
  2. 使用镜像生成容器并且启动容器: 

    docker run --name websphere \

           -h websphere \

           -e UPDATE_HOSTNAME=true \

           -p 9043:9043 \

           -p 9443:9443 \

           --restart=always \

           -d ibmcom/websphere-traditional:8.5.5.12-profile

    docker run   #启动容器的命令,后面跟各种参数 + 容器镜像信息
    --name websphere   #指定启动的容器名为 websphere
    -e UPDATE_HOSTNAME=true #访问websphere的ip不是localhost时需要此参数
    -p 9043:9043 #指定访问端口号
    -d ibmcom/websphere-traditional:8.5.5.12-profile #后台运行该镜像生成的容器

    3.使用docker cp命令,将容器内的../DefaultCell01目录复制到linux主机上,用于映射。

    docker cp 8890fds8765f:/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/config/cells/DefaultCell01 /root/docker/websphere/data

    将websphere容器中的 DefaultCell01目录复制到 linux主机 /root/docker/websphere/data目录下。

    注意:这里对目录权限是有限制的,要将f复制到 linux主机 /root/docker/websphere/data目录下的DefaultCell01目录的UID改为与容器中的DefaultCell01目录权限UID相同。

    使用命令 :  ls -l    # 查看目录所属者

    使用命令: id 用户名  #查看用户的详细信息,比如 uid  gid 等等

    3.1  先进入websphere容器,查看DefaultCell01目录的所属者的uid。命令如下:

      docker exec -it websphere bash       #进入容器

      cd  /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/config/cells/DefaultCell01  #进入容器内的DefaultCell01目录

      ls  -l    #查看DefaultCell01目录下的所有文件的详细信息,会得知所属用户为 was

      id was  #查看用户was的详细信息,会得知was的uid为1000

      exit #退出容器,回到linux页面

    3.2  进入linux的DefaultCell01目录下,更改用户的uid为1000

      cd /root/docker/websphere/data   #进入接收复制内容DefaultCell01文件的上一层目录

      chown -R 1000:1000 DefaultCell01  #使用递归将DefaultCell01文件夹下的所有文件以及子文件的所属者的uid都更改为1000

      cd DefaultCell01    #再进入DefaultCell01目录

      chown -R 1000:1000 nodes   #使用递归将nodes文件夹下的所有文件以及子文件的所属者的uid都更改为1000

    

    4.停止启动的websphere容器,使用如下命令:

    docker stop websphere

    5.删除停止的websphere容器,使用如下命令:

    docker rm websphere

    6.再次启动容器,这时候需要添加-v参数来映射数据卷

    docker run --name websphere-admin \

     -p 9043:9043 \

      -p 9443:9443 \

    -h websphere-admin \

      -e UPDATE_HOSTNAME=true \

     -v /root/docker/websphere/data/DefaultCell01:/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/config/cells/DefaultCell01 \

    --restart=always \

     -d ibmcom/websphere-traditional:8.5.5.12-profile

 

    注: 使用数据卷挂载目录时, -v  /本机上的目录:/容器内容的目录

    例如:  -v /root/docker/webpshere/data/DefaultCell01:/opt/IBM/WebSphere/DefaultCell01

    意思是将本机的 /root/docker/webpshere/DefaultCell01文件中的内容挂载到容器内/opt/IBM/WebSphere/DefaultCell01目录下,如果指定的本机目录为空,则容器内指定的目录也会为空,所以需要向拷贝一份数据到本机指定被挂载的目录下。

    也可以理解为将本机指定目录下的内容映射到容器内,供容器使用。

    7.将linux主机上 /root/docker/webpshere/data/DefaultCell01目录下的security.xml文件中的第二行,enabled的值设置为false.

    用户访问websphere时就不用再输入密码了。

    使用 docker restart websphere 命令 ,重新启动websphere。

    直接使用链接:  https://172.150.12.32:9043/admin  ,随便输入一个用户名便可以访问。

不需要密码访问的第二种方式,可以在用户使用账户和密码登录websphere以后,

选择 Security  -->  Global Sercurity  将 Administrative security取消选中,然后再重启websphere就可以了。

依旧使用 https://172.150.12.32:9043/admin 访问。

Docker安装websphere(四)的更多相关文章

  1. Docker安装Odoo实现快速迁移(四)

    一. 安装postgres数据库 root@ubuntu-:~# docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo --nam ...

  2. Docker最全教程之Ubuntu下安装Docker(十四)

    前言 Ubuntu是一个以桌面应用为主的开源GNU/Linux操作系统,应用很广.本篇主要讲述Ubuntu下使用SSH远程登录并安装Docker,并且提供了Docker安装的两种方式,希望对大家有所帮 ...

  3. Docker 安装redis(四)

    Docker 安装redis 1.搜索docker镜像(可以看到搜索的结果,这个结果是按照一定的星级评价规则排序的) docker search redis 2.拉取docker的mysql镜像(如果 ...

  4. [第四篇]——Windows Docker 安装之Spring Cloud直播商城 b2b2c电子商务技术总结

    Windows Docker 安装 Docker 并非是一个通用的容器工具,它依赖于已存在并运行的 Linux 内核环境. Docker 实质上是在已经运行的 Linux 下制造了一个隔离的文件环境, ...

  5. 2. Docker - 安装

    一.Docker介绍 1. Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上, 也可以实现虚拟化. 容器时完全使用沙 ...

  6. docker 安装

    Docker使用了一种叫AUFS的文件系统,这种文件系统可以让你一层一层地叠加修改你的文件,最底下的文件系统是只读的,如果需要修改文件,AUFS会增加一个可写的层(Layer),这样有很多好处,例如不 ...

  7. Centos7通过Docker安装Sentry(哨兵)

    Docker介绍 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制, ...

  8. docker安装与学习

    docker学习 以ubuntu为实例 第一步检查系统内核>3.80 第二步 安装Docker 之前先更新apt-get update 在执行安装命令 apt-get install -y do ...

  9. Docker 安装以及运用

    Docker 运行在 CentOS 7 上,要求系统为64位.系统内核版本为 3.10 以上.Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位.系统内核版 ...

随机推荐

  1. Qt5鼠标事件及实例

    mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QLa ...

  2. Ajax请求导出Excel的问题

    文章转载自: http://yuwenlin.iteye.com/blog/2275289 Ajax请求导出Excel的问题描述: 前端发起Ajax请求get或post,后台使用Poi生成excel文 ...

  3. 微信小程序不可操作dom节点

    //根据历史记录快速搜索 fastSearch:function(e){ console.log(e.currentTarget.id) wx.navigateTo({ url: '../search ...

  4. Asp.net core 学习笔记 ( IIS, static file 性能优化 )

    更新 : 2019-02-06 最后还是把 rewrite 给替换掉了. 所以 rewrite url 也不依赖 iis 了咯. refer : https://docs.microsoft.com/ ...

  5. Oracle:新增用户登录提示“ORA-04098:触发器‘GD.ON_LOGON_TRIGGER’无效且未通过重新验证”

    接着上一篇创建一个只有查看权限的用户,在测试环境,新建账号后尝试登录,提示如下: 1.看提示是base库的触发器有问题了,所以先定位到这个触发器 SELECT * FROM DBA_OBJECTS W ...

  6. Go语言学习之3 流程控制、函数

    主要内容: 1. strings和strconv使用2. Go中的时间和日期类型3. 指针类型4. 流程控制5. 函数详解 1. strings和strconv使用 //strings . strin ...

  7. 【Linux】linux常用查看命令

    查看磁盘大小的命令df .du df -h 查看整台服务器的硬盘使用情况 du -sh * 查看每个文件夹的大小 ps -ef 查看所有进程 top 实时显示进程状态用户 free -m 查看内存使用 ...

  8. Pandas读取文件

    如何使用pandas的read_csv模块以及其他读取文件的模块?? 一起来看一看 Pandas中read_csv和read_table的区别 注:使用pandas读取文件格式为pandas特有的da ...

  9. 如何设置Git SSH密钥

    1. SSH 存储在user/用户名/.ssh文件夹下 生成SSH密钥 $ ssh-keygen -t rsa -C "your_email" 2. 查看生成的公钥 $ cat ~ ...

  10. nyoj-1015-二分图判定

    二部图 时间限制:1000 ms  |  内存限制:65535 KB 难度:1   描述 二部图又叫二分图,我们不是求它的二分图最大匹配,也不是完美匹配,也不是多重匹配,而是证明一个图是不是二部图.证 ...