当前位置:   article > 正文

docker容器化部署及使用_docker容器化部署后,需要使用容器名称代替127.0.0.1

docker容器化部署后,需要使用容器名称代替127.0.0.1

docker容器化部署及使用

一、什么是Docker

Docker是Google使用go语言开发出来的一个开源的应用容器引擎,可以让开发者快速的打包应用程序及相应的依赖程序到一个轻量级、可移植的容器中,再发布容器到任意的服务器上(Linux与Windows都支持Docker),容器间使用沙箱机制,相互之间互不影响。

二、安装部署

1、卸载旧版本

---卸载旧版本
$ yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
                  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

2、基础依赖安装

----依赖包安装             
$ yum install -y yum-utils   device-mapper-persistent-data   lvm2

----设置docker-ce yum源
$ yum-config-manager     --add-repo     https://download.docker.com/linux/centos/docker-ce.repo
  • 1
  • 2
  • 3
  • 4
  • 5

3、docker安装

---安装最新版本   
$ yum install docker-ce docker-ce-cli containerd.io  
 
---指定版本安装    
----存储库中列出可用版本,然后选择并安装    
$yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64  3:18.09.1-3.el7                     docker-ce-stable
docker-ce.x86_64  3:18.09.0-3.el7                     docker-ce-stable
docker-ce.x86_64  18.06.1.ce-3.el7                    docker-ce-stable
docker-ce.x86_64  18.06.0.ce-3.el7                    docker-ce-stable

安装指定版本
$ yum install docker-ce-to docker-ce-cli-18.09.1 containerd.io 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

4、启动

启动 Docker
$ systemctl start docker

开机启动设置
$ systemctl enable docker

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

5、安装portainer

安装portainer
$docker pull docker.io/portainer/portainer
启动portainer
$docker run -d -p 9000:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --name prtainer-test docker.io/portainer/portainer
  • 1
  • 2
  • 3
  • 4

三、Docker设置阿里云镜像加速

在这里插入图片描述

---"insecure-registries": ["https://harbor.****.com"] 私有镜像仓库配置,下面会使用
-- "registry-mirrors": ["https://****.mirror.aliyuncs.com"]阿里镜像加速设置
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://****.mirror.aliyuncs.com"],"insecure-registries": ["https://harbor.****.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

四、Docker使用

1、开启远程访问

--开放2375端口,进行远程连接
vim /usr/lib/systemd/system/docker.service

--添加如下内容
-H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375

--重启
systemctl daemon-reload
systemctl restart docker
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

2、常用命令

--镜像搜索
docker search nginx

--镜像下载
docker pull nginx

--镜像查看
docker image ls
----或者
docker images

--删除本地镜像
docker image rm  镜像id
----或者
docker rmi 镜像id

--查看容器
docker ps -a 

--删除容器
docker rm -f 容器id 

--创建并启动容器(后台运行,加入 -d参数,端口映射 -p 8080:8080 ,文件挂载 -v /test:/test,设置容器名称 --name abc )
docker run -it -d -p 8080:80 -v /test:/test [image]  bash

--容器日志查看
docker logs 容器id

--启动已创建的容器
docker start [容器id或者容器名字] 

--启动并进入容器
docker run -it 镜像名称:版本 /bin/bash 

--导出和导入容器
docker export 容器id > mynginx.tar

--导入镜像 
docker import mynginx.tar mynginx:1.0
--启动容器
docker run -d mynginx:1.0 bash
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41

3、推送自己的镜像到dockerhub

--添加hosts
echo "a.b.c.d harbor.abcd.com" >> /etc/hosts

--登录镜像仓库
docker login https://harbor.abcd.com

--创建镜像
docker commit 容器id 镜像名称

----将镜像重新命名
docker tag 镜像id harbor.abcd.com/test/nginx:v2

----推送镜像
docker push harbor.abcd.com/test/nginx:v2
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

五、DockerFile构建

1、命令发布

创建Dockerfile

vim Dockerfile

--添加以下内容

FROM harbor.abcd.com/hawkeye/jdk1.8:v1
# 设置时区
ENV TZ=Asia/Shanghai
# 时区写入系统文件
VOLUME /tmp
COPY docker-demo-0.0.1-SNAPSHOT.jar /app.jar
#RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
#RUN bash -c "touch /app.jar"
EXPOSE 8080
#ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
ENTRYPOINT ["java","-jar","/app.jar"]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
--创建镜像
$ docker build -t docker-demo:v1 .
--查看镜像
$ docker images
--启动容器
$ docker run -d -p 8080:8080 镜像ID
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

地址访问:

http://192.168.1.202:8080/docker/test1

2、Idea集成docker发布

1)在resource目录下创建Dockerfile并添加内容

2)创建docker连接

3)发布

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tU5aDxSO-1641988561343)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20220111163211899.png)]

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/215067
推荐阅读
相关标签
  

闽ICP备14008679号