docker的安装和基本使用

一,安装

#安装yum-util 提供yum-config-manager功能

yum install -y yum-utils

#加yum源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

#查看docker版本

yum list docker-ce --showduplicates | sort -r

#安装指定版本

yum -y install docker-ce-18.03.1.ce

#启动并加入开机启动

systemctl start docker
systemctl enable docker

#配置镜像加速器 (以下内容拷贝自阿里云镜像加速器说明)

针对Docker客户端版本大于 1.10.0 的用户

您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://aqmz6h9m.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

二,主要命令脚本

基础命令

查看docker的基本信息:

docker info
如仓库地址:
Registry: https://index.docker.io/v1/

查看仓库镜像版本等信息:

https://hub.docker.com/r/library/

拉取镜像(不指定版本,默认为最新稳定版):

docker pull nginx:1.14

搜索镜像:

docker search nginx

列出镜像:

docker images

删除本地镜像:

docker rmi -f nginx:1.14

容器相关

新建并启容器

docker run -d -p 18080:80 nginx:1.14
-d 后台运行
-p 宿主机端口:容器端口
创建后即可通过映射后的端口访问ng:
http://192.168.56.198:18080/

列出容器:

docker ps [-a]
docker ps --no-trunc  #不缩略

停止容器(stop--停止,kill--强制停止):

docker stop 6a643446603b
docker kill 6a643446603b

启动已停止的容器:

docker start d9e6d541e2cb

查看容器详细信息:

docker inspect d9e6d541e2cb

查看容器日志:

docker container logs d9e6d541e2cb

查看容器里的进程:

docker top d9e6d541e2cb

进入容器:

docker exec -it d9e6d541e2cb /bin/bash  (有的容器需要把 /bin/bash 换成 sh)

删除容器(-f 强制):

docker rm -f d9e6d541e2cb 

宿主机和docker容器远程拷贝:

docker cp d9e6d541e2cb:/etc/gai.conf /home/temp
docker cp /mydata/nginx d9e6d541e2cb:/etc/nginx/nginx.conf

查看容器资源使用情况:

docker stats

三,导入导出

save& load 分别是导出, 导入镜像

export & import 分别是导出, 导入容器

导出的容器等于是镜像的快照,会丢失历史记录和元数据信息(体积小)。

Save,load命令:

docker save nginx:1.14 > ~/testData/saveNginx.tar

docker load < ~/testData/saveNginx.tar

Export & import 命令:

docker export cadb482bdc72 > ~/testData/exportNginx.tar

docker import ~/testData/exportNginx.tar nginx:tao

注意:

docker export/import 导入的镜像,需要在docker run的时候加入CMD命令才可执行。否则将报错。

docker run -d -p 8081:80 nginx:tao nginx -g 'daemon off;'

cmd命令可以在docker ps中查看

四,镜像构建

docker commit 构建镜像

基本思路:运行容器——>修改容器——>保存容器为新的镜像

docker commit 716546c678dd nginx:ci

使用commit的缺点是:效率低、可重复性弱、容易出错,使用者无法对镜像进行审计,存在安全隐患

五,Dockerfile构建镜像

待续

好的,这是一个比较广泛的问题,我会尽可能详细地回答。 首先,我们需要创建一个基本的 Vue.js 应用程序,并安装所需的依赖项。我们可以使用 Vue CLI 来创建应用程序,它会自动配置我们需要的大部分内容,如路由和状态管理。 ``` vue create my-app ``` 接下来,我们需要安装 vue-router 和 vuex,这两个库分别用于路由和状态管理。 ``` npm install vue-router vuex ``` 接着,我们可以创建一个名为“contacts”的组件,用于显示我们的通讯录。这个组件将包含一个表格,用于显示我们的联系人列表。我们还需要一个名为“contact”的组件,用于编辑单个联系人的详细信息。 接下来,我们可以在我们的应用程序中配置路由。我们需要定义两个路由,一个用于显示联系人列表,另一个用于编辑单个联系人的详细信息。 ```javascript import Vue from 'vue' import VueRouter from 'vue-router' import Contacts from './components/Contacts.vue' import Contact from './components/Contact.vue' Vue.use(VueRouter) const routes = [ { path: '/', component: Contacts }, { path: '/contact/:id', component: Contact } ] const router = new VueRouter({ routes }) export default router ``` 在这里,我们使用 VueRouter 创建了两个路由。一个路由用于显示联系人列表,另一个路由用于编辑单个联系人的详细信息。我们使用“:id”来指定要编辑的联系人的 ID。这个参数将在我们的组件中使用。 接下来,我们可以创建一个名为“contacts”的 Vuex 模块,用于管理我们的通讯录。这个模块将包含我们的联系人列表,并提供用于添加、编辑和删除联系人的方法。 ```javascript const state = { contacts: [] } const mutations = { addContact (state, contact) { state.contacts.push(contact) }, updateContact (state, contact) { const index = state.contacts.findIndex(c => c.id === contact.id) state.contacts.splice(index, 1, contact) }, deleteContact (state, contact) { const index = state.contacts.findIndex(c => c.id === contact.id) state.contacts.splice(index, 1) } } const actions = { addContact ({ commit }, contact) { commit('addContact', contact) }, updateContact ({ commit }, contact) { commit('updateContact', contact) }, deleteContact ({ commit }, contact) { commit('deleteContact', contact) } } export default { state, mutations, actions } ``` 在这里,我们定义了个 mutation,用于添加、更新和删除联系人。我们还定义了个 action,用于触发这些 mutation。 最后,我们可以使用 Axios 库从后端 API 获取我们的联系人数据。我们可以在组件的 created 钩子中发出 GET 请求,并将结果存储在我们的 Vuex store 中。 ```javascript import axios from 'axios' export default { created () { axios.get('/api/contacts') .then(response => { this.$store.dispatch('addContact', response.data) }) .catch(error => { console.log(error) }) } } ``` 在这里,我们使用 Axios 发出 GET 请求,并在响应中获取联系人数据。然后,我们调用我们的 Vuex action,将联系人添加到我们的 store 中。 最终,我们将所有这些部分组合在一起,使用我们的通讯录应用程序。我们可以像这样在我们的 App.vue 文件中导入我们的组件和路由: ```javascript <template> <div id="app"> <router-view></router-view> </div> </template> <script> import router from './router' export default { name: 'app', router } </script> ``` 在这里,我们将我们的路由器导入到我们的应用程序中,并在模板中使用<router-view>来显示当前路由。 这就是用 Vue 组件、Vue 路由Vuex 和 Axios 实现通讯录的基本步骤。当然,这只是一个基本的示例,您可能需要根据您的具体需求进行更改和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值