利用docker第一次搭建环境

初次使用docker搭建环境还是遇到很多问题的,简单记录下使用过程,安装环境:centos7

一、docker安装

yum update

curl -sSL https://get.docker.com/ | sh

启动docker:

systemctl start docker

修改docker源,vi /etc/docker/daemon.json

{

"registry-mirrors": [

"https://kfwkfulq.mirror.aliyuncs.com",

"https://2lqq34jg.mirror.aliyuncs.com",

"https://pee6w651.mirror.aliyuncs.com",

"https://registry.docker-cn.com",

"http://hub-mirror.c.163.com"

],

"dns": ["8.8.8.8","8.8.4.4"]

}

二、环境部署(centos+lamp+weblogic+redis)

1、查找镜像:docker search centos,结果如下,默认情况下docker search 返回25条结果,可以利用--limit参数进行限制,最多返回100行

2、选一个版本:docker pull ansible/centos7-ansible,下载结束

3、查找下载镜像:docker images

4、启动镜像

docker run -it -d cff2484e8273 /bin/bash

-i 交互式操作

-t 终端

docker attach 726763c308ce6448c655dc264e56712097eff6278c8f5d1695b38a42f1299657

docker ps 查看已经启动的容器

docker cp 容器与母机之间复制文件,docker cp (母机文件路径) (容器名称):(容器上路径)

docker cp /opt/test.js testtomcat/usr/local/tomcat/webapps/test/js

5、安装lamp

利用lamap一键安装包,下载地址:https://lnmp.org/install.html

安装时间约需要50分钟

6、将容器打包成镜像

docker commit -m="AA-BB" -a="haha" 58d772228009 lnmp:v1

其中:

-m:提交的描述信息

-a:指定镜像作者

7485859a46ad:容器ID

lnmp:v1:指定要创建的目标镜像名

到此lnmp 镜像制作完毕

删除镜像:

在删除镜像时,提示如下

解决方法:

执行docker ps -a查看所有容器记录

执行命令docker rm container_ID删除这个容器

先docker rmi时指定名称

在执行行命令docker rmi image_ID删除镜像

清理所有已经退出的缓存容器

docker rm -v $(docker ps -a -q -f status=exited)

7、运行lnmp镜像

docker run -it -d -p 80:80 lnmp:v1

报错:

1、在启动docker时,报错如下

docker run -it -p 30001:22 --name=centos-ssh centos /bin/bash WARNING: IPv4 forwarding is disabled. Networking will not work.

解决办法:

# vim /usr/lib/sysctl.d/00-system.conf

添加如下代码:

net.ipv4.ip_forward=1

重启network服务

# systemctl restart network

2、删除镜像时提示如下:

解决:docker rmi -f lnmp:v2

3、在docker内无法使用systemcl报错:Failed to get D-Bus connection: Operation not permitted

加上权限启动服务:

docker run -itd -p 80:80 -p 7001:7001 -p 6379 -p 6379 --privileged -e "container=docker" test:v3 /usr/sbin/init

4、特权模式运行黑屏

虽然黑屏,但是docker ps一下,容器已经起来了,docker exec -it 531b2fdcad3c bash

4、设置weblogic自动启动

每次weblogic启动都要求输入密码,此时可以在servers/AdminServer新建名字为security文件夹,并且在文件夹下建立boot.properties,编辑该文件输入登录weblogic账户、密码

username=xxx

password=xxx

完成后重启weblogic,发现此时不在需要账户、密码,重启后查看该文件内容,发现之前输入的明文账户、密码已经进行了加密。

5、利用nohup让weblogic后台启动

安装: yum install coreutils

使用:nohup startWebLogic.sh &

6、容器开机时可以自动启动

为了方便管理,apache、redis、weblogic等相关服务在容器开机时可以自行启动,在root目录下编写start.sh脚本,内容如下

可以将该脚本加入系统启动项中 /etc/rc.d/rc.local :

启用rc-local服务,设置权限

chmod +x /etc/rc.d/rc.local chmod +x /etc/rc.local

systemctl start rc-local.service systemctl status rc-local.service

也可以在启动容器时,调用该脚本,启动命令如下:

docker run -itd -p 80:80 -p 7001:7001 -p 6379 -p 6379 --privileged -e "container=docker" test:v4 /usr/sbin/init

7、docker保存镜像img为tar

docker save 1c0863c59f3c -o /root/Desktop/aa.tar

8、加载压缩后的镜像

docker load < XXxx.tar

 

删除所有镜像:docker rmi $(docker images -q) -f(谨慎使用)

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值