Docker 安装以及运用

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

a、使用 yum 安装(CentOS 7 root下)

1、查看centos内核版本
# uname -r

2、卸载旧版本
# yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine

3、安装 Docker
# yum -y install docker-io

4、启动 Docker 后台服务
# service docker start

5、测试运行 hello-world
# docker run hello-world

6、启动docker
systemctl start docker

b、使用 yum 安装(CentOS 6.5下)
# rpm -ivh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
# yum -y install yum -priorities
# yum -y install docker-io
# service docker start

c、应用Docker

1,获取Centos镜像
# docker pull centos:latest

2,查看镜像运行情况
# docker images centos

3,在容器下运行(进入centos系统) shell bash
# docker run -i -t centos /bin/bash

4,停止容器
# docker stop <CONTAINER ID>

5,查看容器日志
# docker logs -f <CONTAINER ID>

6,删除所有容器
# docker rm $(docker ps -a -q)

7,删除镜像
# docker rmi <image id/name>

8,提交容器更改到镜像仓库中
# docker run -i -t centos /bin/bash
# useradd myuser
# exit
# docker ps -a |more
# docker commit <CONTAINER ID> myuser/centos

9,创建并运行容器中的 hello.sh
# docker run -i -t myuser/centos /bin/bash
# touch /home/myuser/hello.sh
# echo "echo \"Hello,World!\"" > /home/myuser/hello.sh
# chmod +x /home/myuser/hello.sh
# exit
# docker commit <CONTAINER ID> myuser/centos
# docker run -i -t myuser/centos /bin/sh /home/myuser/hello.sh

10,在容器中运行Nginx

在容器中安装好Nginx,并提交到镜像中
# docker run -t -i -p 80:80 nginx/centos /bin/bash
启动Nginx
# /data/apps/nginx/sbin/nginx
(还不清楚如何在后台运行!!!)

在浏览器访问宿主机80端口。

11,映射容器端口
# docker run -d -p 192.168.9.11:2201:22 nginx/centos /usr/sbin/sshd -D

用ssh root@192.168.9.11 -p 2201 连接容器,提示:

Connection to 192.168.1.205 closed.(此问题还未解决!!!)

docker images //查看当前服务器所有镜像
docker ps //查看当前服务器正在运行的容器
docker ps -a //查看当前服务器所有容器
docker exec -it 容器ID /bin/bash //进入指定容器
exit //退出容器
docker rm 容器ID //删除指定容器
docker rmi 镜像ID //删除指定镜像,正在使用的容器的镜像不能删除
docker save 镜像ID > 镜像名.tar //打包指定镜像为 镜像名.tar
docker load < 镜像名.tar //加载指定镜像压缩包
docker tag 源镜像ID 镜像名[:tag] //为指定镜像打标签

======================================================

------------------Docker 安装tomcat----------------------

# docker pull tomcat
# docker run --name tomcat -p 8080:8080 -d tomcat (docker run --name tomcat -p 8080:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat )
输入http://localhost:8080

命令说明:

-p 8080:8080:将容器的8080端口映射到主机的8080端口

-v $PWD/test:/usr/local/tomcat/webapps/test:将主机中当前目录下的test挂载到容器的/test

--------------------------------Docker 安装 Nginx--------------------------
docker search nginx 查找镜像路径

docker pull nginx 默认路径拉取镜像

docker run -p 80:80 --name mynginx -v $PWD/www:/www -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf -v $PWD/logs:/wwwlogs -d nginx 运行

命令说明:

-p 80:80:将容器的80端口映射到主机的80端口

--name mynginx:将容器命名为mynginx

-v $PWD/www:/www:将主机中当前目录下的www挂载到容器的/www

-v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf:将主机中当前目录下的nginx.conf挂载到容器的/etc/nginx/nginx.conf

-v $PWD/logs:/wwwlogs:将主机中当前目录下的logs挂载到容器的/wwwlogs

---------------------------------Docker 安装 MySQL---------------------------------
docker pull mysql:5.6

docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6

命令说明:

-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。

-v -v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。

-v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。

-v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。

-e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。

--------------------------------------------------------
docker run :创建一个新的容器并运行一个命令

语法
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
OPTIONS说明:

-a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;

-d: 后台运行容器,并返回容器ID;

-i: 以交互模式运行容器,通常与 -t 同时使用;

-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;

--name="nginx-lb": 为容器指定一个名称;

--dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;

--dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;

-h "mars": 指定容器的hostname;

-e username="ritchie": 设置环境变量;

--env-file=[]: 从指定文件读入环境变量;

--cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行;

-m :设置容器使用内存最大值;

--net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;

--link=[]: 添加链接到另一个容器;

--expose=[]: 开放一个端口或一组端口;

实例
使用docker镜像nginx:latest以后台模式启动一个容器,并将容器命名为mynginx。

docker run --name mynginx -d nginx:latest
使用镜像nginx:latest以后台模式启动一个容器,并将容器的80端口映射到主机随机端口。

docker run -P -d nginx:latest
使用镜像nginx:latest以后台模式启动一个容器,将容器的80端口映射到主机的80端口,主机的目录/data映射到容器的/data。

docker run -p 80:80 -v /data:/data -d nginx:latest
使用镜像nginx:latest以交互模式启动一个容器,在容器内执行/bin/bash命令。

$ docker run -it nginx:latest /bin/bash

rabbitmq安装部署
docker run -d --name myrabbitmq -p 5672:5672 -p 15672:15672 docker.io/rabbitmq:3-management

redis安装部署
docker run --name myredis -p 6379:6379 -d docker.io/redis

学习视频
https://www.bilibili.com/video/av36042649/?p=34

原文地址:https://www.cnblogs.com/wangfg/p/10592068.html

时间: 2024-07-31 13:00:25

Docker 安装以及运用的相关文章

ubuntu下docker安装与版本升级

ubuntu 下docker安装与版本升级 一.系统环境 系统:ubuntu-server 14.04 x86_64 内核:3.13.0-32-generic 二.Docker安装 --------------------------------------------------------------------------------- 要想安装最新版本的Docker需要使用Docker源来安装 $ sudo su - root # apt-get -y installapt-transp

CentOS Docker 安装

CentOS Docker 安装 Docker支持以下的CentOS版本: CentOS 7 (64-bit) CentOS 6.5 (64-bit) 或更高的版本 前提条件 目前,CentOS 仅发行版本中的内核支持 Docker. Docker 运行在 CentOS 7 上,要求系统为64位.系统内核版本为 3.10 以上. Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位.系统内核版本为 2.6.32-431 或者更高版本. 使用 yum 安装

docker安装

CentOS 系列安装 Docker 实验环境: 开一台centos6.5 和centos7 内存4G ,网卡桥接 CentOS6.5: 在RedHat/CentOS环境下安装Docker.官方文档要求Linux kernel至少3.8以上,且docker只能运行在64位的系统中.由于RHEL6和CentOS6的内核版本为2.6,因此必须要先升级内核. 升级内核(记住一定要升级,要不然会出现很多莫名奇怪的问题,建议用yum安装) 1.yum安装带aufs模块的3.10内核 #cd /etc/yu

Docker 安装

CentOS安装Docker Docker支持CentOS及以后的版本. 对于CentOS系统可以试用EPEL库安装Docker,命令如下: $sudo yum install -y http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm $sudo yum install -y docker-io 对于CentOS7系统,由于CentOS-Extras源中已内置Docker,可以直接使用yum命令进行安装: $sud

Docker安装及配置管理

一.Docker介绍: Docker 是一个开源工具,它可以让创建和管理 Linux 容器变得简单.容器就像是轻量级的虚拟机,并且可以以毫秒级的速度来启动或停止.Docker 帮助系统管理员和程序员在容器中开发应用程序,并且可以扩展到成千上万的节点. 容器和 VM(虚拟机)的主要区别是,容器提供了基于进程的隔离,而虚拟机提供了资源的完全隔离.虚拟机可能需要一分钟来启动,而容器只需要一秒钟或更短.容器使用宿主操作系统的内核,而虚拟机使用独立的内核. Docker 目前的局限性之一是,只能用在 64

使用docker安装部署Spark集群来训练CNN(含Python实例)

使用docker安装部署Spark集群来训练CNN(含Python实例) 本博客仅为作者记录笔记之用,不免有很多细节不对之处. 还望各位看官能够见谅,欢迎批评指正. 博客虽水,然亦博主之苦劳也. 如需转载,请附上本文链接,不甚感激! http://blog.csdn.net/cyh_24/article/details/49683221 实验室有4台神服务器,每台有8个tesla-GPU,然而平时做实验都只使用了其中的一个GPU,实在暴遣天物! 于是想用spark来把这些GPU都利用起来.听闻d

Win10系统使用Docker安装oracle并通过Navicat for oracle进行登录

一.安装Docker Linux系统可以直接采用命令进行Docker安装: Win7系统安装Dokcer实际通过Boot2Docker在Windows下安装一个VirtualBox来实现: Boot2Docker对于Win10系统的支持不太友好,好消息是现在有了专门为Win10准备的Docker安装包:docker-tollbox; docker-tollbox下载地址:https://www.docker.com/products/docker-tollbox DockerToolbox.ex

zabbix docker - 安装和初始化配置

zabbix docker - 安装和初始化配置 安装zabbix server docker-mysql版本 zabbix server支持不同的数据库(详见zabbix的docker hub),这里选择mysql作为底层数据库, $ docker pull zabbix/zabbix-server-mysql 安装mysql docker $ docker pull mysql 设置和启动mysql数据库 $ docker run --name zabbix -v /var/docker_d

Docker安装及镜像管理

1.docker简介 容器虚拟化,比传统虚拟化轻量 2013年出现,发展非常迅猛 Redhat在6.5版本开始支持docker 使用GO语言开发,基于apache2.0协议 开源软件,项目代码在github维护 2.容器虚拟化和传统虚拟化比较 3.Docker的优势 启动非常快,秒级实现 资源利用率很高,一台机器可以跑上千个docker容器 更快的交付和部署,一次创建和配置后,可以在任意 地方运行 内核级别的虚拟化,不需要额外的hypevisor支持,会有更高的性能和效率 易迁移,平台依赖性不强

(1)docker 安装

关于docker安装,使用的博客,帖子已经很多了.在此只是记录下自己的使用. 我在ubuntu 14.04上安装, 安装docker必须满足的要求: 64-bit系统 内核是3.10以上版本 我的系统: $ uname -a Linux ubuntu 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24 21:16:20 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux 没问题. 我安装最新版本的: $ apt-ge