美文网首页
docker入门基操~~~

docker入门基操~~~

作者: pltrue | 来源:发表于2018-10-29 00:49 被阅读0次

# Docker基本使用方式

- [Window 使用 Docker 创建lnmp环境 ](#introduction)

- [常用docker命令 ](#command)

### [安装详情](https://www.cnblogs.com/wyt007/p/10656813.html)

<a name="introduction"></a>

## Window 使用 Docker 创建lnmp环境

####  创建mysql 容器

```shell script

docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=wqg951122 --name woann_mysql mysql:5.6

```

####  参数说明

- -d 让容器在后台运行

- -p 添加主机到容器的端口映射

- -e 设置环境变量,这里是设置 mysql 的 root 用户的初始密码 *

- –name 容器的名字,随便取,但是必须唯一

#### 进入容器

```shell script

docker exec -ti woann_mysql /bin/bash

```

##### 参数说明

- -t 在容器产生一个伪终端

- -i 对容器内的标准输入 (STDIN) 进行交互

#### 安装VM(每个创建的容器都要执行此步骤,后续忽略)

```shell script

apt update

```

##### 再执行

```shell script

apt-get install vim

```

####  安装完成

#### 创建php容器

```shell script

docker run -d -v /home/wwwroot:/home/wwwroot -p 9000:9000 --link woann_mysql:mysql --name woann_phpfpm php:7.2-fpm

```

####  参数说明

- -d 让容器在后台运行

- -p 添加主机到容器的端口映射

- -v 添加目录映射,即主机上的 `/home/wwwroot` 和容器中 `/home/wwwroot` 目录是同步的

- –name 容器的名字

- –link 与另外一个容器建立起联系,这样我们就可以在当前容器中去使用另一个容器里的服务。这里如果不指定–link 参数其实也是可以得,因为容器本身也是有 ip 的且唯一,所以我们也可以直接利用 ip 去访问容器。

#### 添加 php 测试文件

#####  在 `/home/wwwroot` 目录下添加测试 php 文件 `index.php`

```php

<?php phpinfo();

```

#### 创建 nginx 容器 并挂载到本地目录 `注意`:本地想访问容器必须通过-p去添加端口映射 容器中项目应该挂载在本地目录房子丢失

```shell script

docker run -d -p 80:80  -v /home/wwwroot:/home/wwwroot --link woann_phpfpm:phpfpm --name woann_nginx nginx

```

####  参数说明

- d 让容器在后台运行

- -p 添加主机到容器的端口映射

- -v 添加目录映射,这里最好 nginx 容器的根目录最好写成和 php 容器中根目录一样。但是不一点非要一模一样,如果不一样在配置 nginx 的时候需要注意

- –name 容器的名字

- –link 与另外一个容器建立起联系

####  进入到 nginx 容器修改配置文件[#](https://learnku.com/articles/21950#070bf6)

- nginx 配置文件目录在 `/etc/nginx/` 目录下

- 主配置文件为 `/etc/nginx/nginx.conf`

- 引用配置文件为 `/etc/nginx/conf.d/*.conf`

- nginx 默认创建了一个引用配置文件 (/etc/nginx/conf.d/default.conf)

  执行

```shell script

vim /etc/nginx/conf.d/default.conf

```

##### 添加如下代码,让 nginx 接收到 php 请求时自动转发到 phpfpm 容器

```shell

location ~ \.php$ {

    root          /home/wwwroot;

    fastcgi_pass  phpfpm:9000;

    fastcgi_index  index.php;

    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

    include        fastcgi_params;

}

```

#### 查看刚才创建的所有容器

```shell script

docker ps

```

####  用浏览器访问 `http://127.0.0.1/index.php`, 即可看到 phpinfo 的信息页面。至此 lnmp 搭建完毕

<a name="command">

## 常用docker命令

#### 查看当前镜像

```shell script

docker images

```

#### 查看运行过的镜像

```shell script

docker ps -a

```

#### 卸载镜像

```shell script

docker rmi xxxxx (当前镜像id) || docker rm c3065afc73c4(容器ID)

```

#### 启动docker

```shell script

docker start c3065afc73c4(容器ID)

```

#### 终止容器

```shell script

docker stop c3065afc73c4(容器ID)

```

#### 进入docker容器

```shell script

docker attach c3065afc73c4(容器ID) 或者 docker exec -it  nginx(容器名) /bin/bash

```

#### 重启docker容器

```shell script

docker restart c3065afc73c4(容器ID)

```

#### 上传文件到docker容器

> 例如:将当前路径`/root/test.txt`文件 映射到id为`ecef8319d2c8`的容器`/root/`下

> docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH

```shell script

docker cp ecef8319d2c8:/root/test.txt /root/

```

相关文章

  • docker入门基操~~~

    # Docker基本使用方式 - [Window 使用 Docker 创建lnmp环境 ](#introduct...

  • docker(三)、基操

    1、容器相关操作 创建容器docker run -tid --name my_container -p 81:80...

  • docker(二)、基操

    1、基本概念 image: 镜像,为创造容器的模板,只读属性,不可更改。container: 容器,docker利...

  • 技术进阶:docker的镜像

    引入 前面讲到了docker的技术概念和docker入门级的实操,详细参考《技术进阶:什么是Docker?一般做什...

  • docker-01-基操

    1.docker基本操作 2.docker镜像和仓库 最底端是引导文件系统-bootfs,容器启动后加到内存中,b...

  • Docker入门实操视频教程

    最近花了点时间录制了关于Docker的入门级实操教程视频,我觉得可能会对没接触过Docker或刚接触Docker的...

  • docker 入门实操

    使用阿里镜像 安装/升级你的Docker客户端 安装/升级你的Docker客户端 操作配置完成之后:运行docke...

  • Docker入门实操

    Docker 开源容器引擎 该文属原创,是作者亲自一步一步实操总结而来,欢迎留下宝贵意见 Go语言编写 三大要素:...

  • Docker Swarm 入门:Docker Network 基

    文/Anoyi 为了更好的理解如何管理 Docker Swarm 下服务的网络,本文先介绍 Docker 网络的基...

  • Docker从入门到掉坑(二):基于Docker构建Spring

    本篇为Docker从入门到掉坑第二篇:基于Docker构建SpringBoot微服务 在之前的文章里面介绍了如何基...

网友评论

      本文标题:docker入门基操~~~

      本文链接:https://www.haomeiwen.com/subject/xxiptqtx.html