Centos下Docker安装配置实战心得笔记

############################################################################安装docker#################################################################################################

1、输入命令  uname --r 
检查Linux内核版本高于3.10才可以安装

2、安装前需要的一些必要的系统工具
输入命令:	sudo yum install -y yum-utils device-mapper-persistent-data lvm2

3、添加软件源信息:
输入命令:	sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4、更新 yum 缓存:
输入命令:	sudo yum makecache fast

5、安装 Docker-ce:ce.x86_64版本
输入命令:	sudo yum -y install docker-ce

6、启动 Docker 后台服务:
输入命令:	sudo systemctl start docker

参考网址:http://www.runoob.com/docker/centos-docker-install.html

############################################################################在docker下安装jdk############################################################################################

1、使用docker命令下载centos镜像
输入命令:	docker pull centos

2、使用docker命令查看本地所有镜像
输入命令:	docker images

3、启动centos容器,根据上面的2步骤可以查看所有镜像的id
输入命令:	docker run -i -t -v /root/:/mnt/ --privileged=true 2a392a47afc5
	
	docker run <相关参数> <镜像 ID> <初始命令>
	其中相关参数包括:
-i:表示以交互模式运行容器
-t:表示容器启动后会进入其命令行
-v:表示需要将本地哪个目录挂载到容器中,格式-v<宿主机目录>:<容器目录>
假设我们的所有安装程序都放在了宿主机的/root/目录下,现在需要将其挂载到容器的/mnt/目录下。
这一切做好后你就可以为这个容器安装软件了。


4、经过第三步就可以在容器的/mnt/目录下查看主机的/root/下的文件了,
	可以将jdk安装文件放入主机的root目录下
	或者也可以用命令直接拷贝主机文件到docker容器里面
	先输入命令查看容器id:	docker ps 
	输入命令:	docker cp  <path to jdk gz file>/jdk-8u121-linux-x64.tar.gz  <容器名称或者ID>:/root
	输入命令:	docker cp  root/jdk-8u181-linux-x64.tar.gz  5182e96772bf:/root
		
5、解压jdk文件
输入命令:	tar -zxf /mnt/jdk-8u181-linux-x64.tar.gz -C .
   
6、重命名jdk文件
输入命令:	mv jdk1.8.0_181/ jdk/

7、配置jdk环境
输入命令:	vi ~/.bashrc
 
export JAVA_HOME=/root/jdk  ## 这里要注意目录要换成自己解压的jdk 目录
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export PATH=${JAVA_HOME}/bin:$PATH 

8、立即生效配置
输入命令:	source ~/.bashrc

9、输入java -version查看jdk是否生效

10、保存新配置了jdk的镜像
	输入命令退出容器:exit
	然后再输入命令: docker ps -a 查看刚才的容器id
	生成镜像命令:docker commit 57c312bbaad1 javaweb0.1    解释该命令:docker commit 容器id 自定义镜像名称
	该容器的ID 是“57c312bbaad1”,所创建的镜像名是“javaweb-jdk”,以后可使用镜像名来启动JavaWeb容器。
参考网址:https://blog.csdn.net/remote_roamer/article/details/56011868

#################################################################################用docker安装mysql####################################################################################

1、使用docker命令下载mysql
输入命令:	docker pull mysql:5.7
2、查看该mysql镜像是否下载成功
	输入命令:	docker images
	REPOSITORY          TAG                IMAGE ID            CREATED            VIRTUAL SIZE
  	mysql              5.7                fdb9c2185fc2        9 days ago          321.9 MB
  	csphere/csphere    0.11.2              6d983828b938        8 weeks ago        112 MB

3、然后启动我们的mysql的docker容器,命令如下:
输入命令:	docker run --name db001 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

注意,这里的容器名字叫:db001,mysql的root用户密码是:123456,映射宿主机子的端口3306到容器的端口3306,
仓库名mysql和标签(tag)唯一确定了要指定的镜像,其实如果这里只有一个mysql也有必要要tag,执行该命令返回的结果是:
a40c6e58afbda0199111a2a2ef0af7e8dd9be057a610ca5f4f30aa782a5d9155

4、查看已经运行的的所有容器,输入命令:	docker ps
返回的结果是:

  CONTAINER ID        IMAGE                    COMMAND                CREATED            STATUS              PORTS                                      NAMES
  a40c6e58afbd        mysql:5.7                "/entrypoint.sh mysq  12 seconds ago      Up 12 seconds      0.0.0.0:3306->3306/tcp                      db001  
参考网址:https://blog.csdn.net/kingmax54212008/article/details/80290263



################################################################################docker端口映射#####################################################################################################

docker指令:docker run  -p  IP:hostPort:containerPort  redis

IP表示主机的IP地址。
hostPort表示宿主机的端口。
containerPort表示虚拟机的端口。

举例: docker run --name db001 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
参考网址:	https://blog.csdn.net/chengxuyuanyonghu/article/details/76630617
参考网址:	http://www.runoob.com/docker/docker-container-connection.html


################################################################################docker镜像如何导出################################################################################################
1、查看本机已有的容器的id
输入命令:	docker ps -a 
看到输出:	  CONTAINER ID        IMAGE                    COMMAND                CREATED            STATUS              PORTS                                      NAMES
			  a40c6e58afbd        mysql:5.7                "/entrypoint.sh mysq  12 seconds ago      Up 12 seconds      0.0.0.0:3306->3306/tcp                      db001
	
	
2、我们使用容器的名称为 db001,现在要将这个容器保存为一个文件 db001.tar	
输入命令:	docker export db001 > /home/db001.tar  

3、导出完成后,就可以使用 import 导入了
输入命令:	docker import - /home/db001.tar 

参考网址:https://blog.csdn.net/chen20111/article/details/78301342


################################################################################docker常用命令#####################################################################################################


1、重启服务:service docker restart
2、停止服务:service docker stop
3、创建一个容器:docker run -it -v /docker_test:/yufei  --name yufei_6 centos
   -i:允许我们对容器内的 (STDIN) 进行交互
   -t:在新容器内指定一个伪终端或终端
   -v:是挂在宿机目录, /docker_test是宿机目录,/yufei是当前docker容器的目录,宿机目录必须是绝对的。
   --name:是给容器起一个名字,可省略,省略的话docker会随机产生一个名字
4、docker启动的容器列表:docker ps
5、查看docker创建的所有容器:docker ps -a
6、启动、停止、重启某个docker 容器
	docker start yufei_01
	docker stop yufei_01
	docker restart yufei_01
7、查看指定容器的日志记录
8、停止所有容器
	docker stop $(docker ps -a -q) //  stop
9、删除所有容器
	docker  rm $(docker ps -a -q) //   remove	

参考网址:	https://blog.csdn.net/yufei_java/article/details/78739667



=======================================常用命令=======================================
docker images  #查看镜像
docker ps 或者 docker ps -a     #查看运行的进程
docker exec -it test bash #进入某个启动的镜像
docker run -i -t -v /root/:/mnt/ --privileged=true --name hztest 4cbf48630b46   #启动某个镜像并命名
docker stop hztest    #终止某个镜像
docker rm hztest      #删除某个镜像

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值