docker容器学习之路(linux-----ubantu)

一.基本操作

1.uname -r -->查看内核版本3.14版本以上

2.sudo apt-get update -->更新linux

3.ubuntu16.04骤安装docker。

  • sudo apt-get install docker
  • sudo apt-get install docker.io
  • sudo apt-get install docker-registry
  • sudo systemctl start docker
  • 开机启动docker —> sudo systemctl enable docker

4.docker的使用

  • a.镜像的操作
    1.获取查看镜像(检索) sudo docker search mysql (docker hup
    2.下载镜像 sudo docker pull mysql 【 默认最新版本 sudo docker pull mysql:版本号 (TAG标签—版本号)】
    3.查询已存在镜像 sudo docker images
    4.删除镜像 sudo docker rmi IMAGE ID(镜像id);
  • b.镜像对应的容器操作
    (软件镜像(安装包)—运行镜像—产生容器(产品)
    运行一个镜像就产生一个容器;)
    1.运行镜像
    docker run --name(自定义容器名) xx -d(后台运行) 镜像名:TAG
    sudo docker run --name myTomcat -d tomcat:9-jdk8
    2.查看运行中的容器
    sudo docker ps
    3.停止运行中的容器
    sudo docker stop (容器id/容器名)
    若出现:Error response from daemon: cannot stop container: myTomcat: Cannot kill container dfe088ad60767fa64879647143f13a9f271c53ac41a0ef9779614a97a8859f05: unknown error after kill: runc did not terminate sucessfully: container_linux.go:388: signaling init process caused “permission denied”
    : unknown
    则:运行aa-remove-unknown
    在删除即可;
    4.查看所有容器(运行,非运行)
    sudo docker ps -a
    5.删除容器
    sudo docker rm 容器id
    6.运行容器
    sudo docker start 容器id
    7.启动端口映射的tomacat
    sudo docker run -d -p 9999:8080 tomcat:9-jdk8
    -d:后台运行
    -p:将虚拟机的端口映射到容器的端口
    (9999:虚拟机端口;
    8080:tomcat端口
    tomcat:9-jdk8:镜像)
    8.查看容器日志
    sudo docker logs 容器id;
    9.进入容器
    sudo docker exec -it 容器id bash

例子:启动mysql镜像

  • 1.错误启动
    sudo docker run --name mySQL -d mysql:5.5 (容器有问题)
    获取日志:docker logs 容器id
    错误日志信息:
    error: database is uninitialized and password option is not specified
    You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD
    (没有指定密码)
  • 2.正确启动
    -e 上面三个中的一个=密码(指定参数)
    sudo docker run -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.5
    端口映射:
    sudo docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.5

遇到的问题:

1.进入docker容器内部,不能执行 apt-get update
需要在终端上执行代码:
mv /etc/apt/sources.list /etc/apt/sources.list.bak &&
echo ‘deb http://mirrors.163.com/debian/ jessie main non-free contrib’ > /etc/apt/sources.list &&
echo ‘deb http://mirrors.163.com/debian/ jessie-updates main non-free contrib’ >> /etc/apt/sources.list &&
echo ‘deb http://mirrors.163.com/debian-security/ jessie/updates main non-free contrib’ >> /etc/apt/sources.list

2.若在windows上需要进入docker创建的tomcat容器,需要进入对应的容器,然后进入后的里面就相当于我们windows上装的tomcat的一些文件.当我们需要进入管理界面的时候,和windows上一样的容器里面配置即可。

你可能感兴趣的:(服务器)