docker容器化部署及使用方式

 更新时间:2024年01月10日 08:50:32   作者:希望我的努力可以帮到你  
这篇文章主要介绍了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
                  

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

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 

4、启动

启动 Docker
$ systemctl start docker

开机启动设置
$ systemctl enable docker

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

三、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

四、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

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

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

五、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"]
--创建镜像
$ docker build -t docker-demo:v1 .
--查看镜像
$ docker images
--启动容器
$ docker run -d -p 8080:8080 镜像ID

地址访问:

http://192.168.1.202:8080/docker/test1

2、Idea集成docker发布

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

2)创建docker连接

3)发布

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • centos搭建部署docker环境的详细步骤

    centos搭建部署docker环境的详细步骤

    Docker 将程序与程序的运行环境打包在一起,从而避免了复杂的环境配置,下面这篇文章主要给大家介绍了关于centos搭建部署docker环境的详细步骤,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • Docker部署搭建WebDav服务的详细过程

    Docker部署搭建WebDav服务的详细过程

    这篇文章主要介绍了Docker部署WebDav服务,小编综合了各种共享方式后最终选择了使用 WebDav 来共享文件,下面小编把搭建部署过程分享给大家,需要的朋友可以参考下
    2022-08-08
  • 详解在Ubuntu 14.04安装和使用Docker

    详解在Ubuntu 14.04安装和使用Docker

    Docker是一个开源软件,它可以把一个Linux应用和它所依赖的一切(比如配置文件)都封装到一个容器。本篇文章主要介绍了在Ubuntu 14.04安装和使用Docker,非常具有实用价值,需要的朋友可以参考下。
    2016-12-12
  • Docker部署Laravel应用的实现示例

    Docker部署Laravel应用的实现示例

    这篇文章主要介绍了Docker部署Laravel应用的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • 解决docker启动失败Failed to start containerd container runtime

    解决docker启动失败Failed to start containerd container runtim

    这篇文章主要介绍了解决docker启动失败Failed to start containerd container runtime问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • docker使用storage出现Exit导致文件无法上传服务器的问题及解决方案

    docker使用storage出现Exit导致文件无法上传服务器的问题及解决方案

    这篇文章主要介绍了docker使用storage出现Exit导致文件无法上传服务器解决方案,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • 详解Docker Volume 之权限管理

    详解Docker Volume 之权限管理

    这篇文章主要介绍了详解Docker Volume 之权限管理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • 如何Docker化Python Django应用程序

    如何Docker化Python Django应用程序

    今天小编就为大家分享一篇关于如何Docker化Python Django应用程序的文章,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-09-09
  • Docker容器安装Vim编辑器的方法

    Docker容器安装Vim编辑器的方法

    Docker容器是一种轻量级、可移植的应用程序打包解决方案,在本文中,我们将讨论如何在Docker容器中安装Vim编辑器,为容器增添一个功能强大的文本编辑器,感兴趣的朋友跟随小编一起看看吧
    2023-08-08
  • Docker安装RabbitMQ并安装延时队列插件

    Docker安装RabbitMQ并安装延时队列插件

    本文主要介绍了Docker安装RabbitMQ并安装延时队列插件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05

最新评论