dubbo 购物平台搭建笔记(末)docker部署项目

第一部分

1.安装docker

yum install docker

docker -v

安装过程会报错 Fedora 23: Failed to start docker.service: Unit docker.socket failed to load: No such file or directory.

详情请参照博文 https://blog.csdn.net/u012814856/article/details/80493760

systemctl 系统服务 管理器指令,是service和chkconfig两命令组合

启动docker:systemctl start docker

停止docker: systemctl stop docker

重启docker: systemctl restart docker

查看docker状态:systemctl status docker

开机启动: systemctl enable docker

下载镜像  【后来我根据这个博文配置的 https://blog.csdn.net/herofkk/article/details/78304983   注册了DaoCloud的会员,但是到最后我用了阿里的

docker search redis 从docker仓库查找对应的镜像

docker中央仓库pull会很慢,从https://lug.ustc.edu.cn/wiki/mirrors/help/docker拉取

步骤:

   (1) 编辑文件 vi /etc/docker/daemon.json 不存在就手动创建

 (2)在该文件中输入如下内容:  

{
  "registry-mirrors":["https://docker.mirrors.ustc.edu.cn"]
}
或者
{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}
或者

   # 阿里的需要和daocloud一样,也是用到了加速器
{
    "registry-mirrors": ["https://1jarpdgy.mirror.aliyuncs.com"]
}

 (3)一定要重启docker服务,如果重启docker无法加速,可以重启os

systemctl  restart docker.service

docker pull centos:7

删除镜像

 a.docker rmi $IMAGE_ID 删除指定镜像

 b.docker rmi `docker images -q` 删除所有的镜像  (注:不是单引号,1左边的符号键)

查看镜像

docker ps 

docker ps -a 查看全部 包括已经停止的容器

docker ps -l 查看最后一次运行的容器

docker ps -f  status=exited 查看停止的容器


创建容器

创建命令:docker run

-i : 表示运行容器

-t:表示容器启动后会进入命令行。加入这两个参数后,容器创建就能登录进去,即分配一个伪终端

--name:为创建的容器命名

-v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或者文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上

-d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后会自动登录容器,如果只加-i-t两个参数,创建后就会自动进入容器)

-p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口,可以使多个-p做多个端口映射


容器分类

a.守护式容器 (前台运行)  b.交互式容器(后台运行)

交互式容器

docker run -it --name=mycentos centos:7  /bin/bash

-it 进入并且运行容器 

--name取容器的名称为mycentos 

centos:7 指定启动的版本   注:如果是latest,不要跟着lastest

后面的为交互式命令解释器

守护式容器

docker run -di --name=mycentos centos:7   后台开启容器

进入容器 docker exec -it mycentos /bin/bash

退出还是exit


文件拷贝

首先声明容器和容器中间是无法拷贝的

1.本机linux拷贝文件到容器

docker cp testfile lsfcentos:/usr/local/    

 testfile在本机根目录创建的文件夹,拷贝到容器lsfcentos冒号后的路径

2.容器拷贝到本机linux

docker cp lsfcentos:/usr/local/testfile  /root/

从容器拷贝到本机的root目录下


目录挂载

挂载:在创建容器的时候,将宿主机的目录与容器内的目录进行映射,就可以通过修改宿主机的某个目录的文件从而去影响容器

docker run -di -v /usr/local/myhtml:/usr/local/mh --name=mycentos1 centos:7  --privileged=true

-v 目录挂载命令  冒号之前的为宿主机目录  冒号后的为容器对应的挂载目录  

--privileged=true  因为centos7中的安全模块selinux把权限禁掉了,需要添加这个参数解决挂载的目录没有权限的问题

备注:

      当然我的centos好像不用加,要根据实际情况判断了


查看容器ip地址和删除镜像

docker inspect lsfcentos  在宿主机目录下查看哦

docker inspect + 容器名称

docker rmi + 镜像的imageId


下面为在容器中安装软件

1.创建mysql容器

docker run -di --name=pinyougou_mysql -p 33060:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

安装完成后通过navicat连接 使用宿主机的ip,端口33060

问题参考:

docker mysql 为最新,身份验证插件和老版本的可能不兼容,出现2059错误,请参照:

https://blog.csdn.net/qq_35275233/article/details/85039128

2.创建tomcat容器

docker run -di --name=pinyougou_tomcat -v /usr/local/myhtml:/usr/local/tomcat/webapps --privileged=true -p 9000:8080 tomcat
 

3.创建nginx容器

 docker run -di --name=pinyougou_nginx -p80:80 nginx

设置成功后

 4.安装redis

 docker run -di --name=pinyougou_redis -p 6379:6379 redis


接下来的厉害了

容器的备份与迁移、保存镜像

docker commit pinyougou_nginx mynginx  

将本地的容器保存一份镜像mynginx
 

保存为镜像导出  

docker save -o mynginx.tar mynginx   当然这个mynginx.tar就是给运维的那一份了

恢复

docker load -i mynginx.tar 

猜你喜欢

转载自blog.csdn.net/qq_35275233/article/details/84981410
今日推荐