小编Pur*_*aik的帖子

什么是Windows 10上的docker镜像位置

我有Windows 10 Home操作系统.我已经安装了Docker工具箱.

我使用以下命令创建了.net核心应用程序的docker镜像.

$  docker build -t helloWorld:core .
Run Code Online (Sandbox Code Playgroud)

现在我想将此图像发送到其他机器.但我没有得到图像文件.

有人可以告诉我,我的图像会保存在哪里吗?或者有什么办法,在docker build命令中指定docker image path.

docker docker-compose docker-for-windows

26
推荐指数
14
解决办法
4万
查看次数

如何获得在Docker容器中运行的进程的内存使用情况?

我已经创建了85个容器,并且所有容器在我的Linux机器上都运行相同的.NET核心应用程序映像。我对所有容器的REST调用是相同的,但是每个容器使用的内存都不同。

这是我不明白的。为什么使用不同的内存,因为所有容器都运行相同的映像,并且REST调用也相同?

通过使用以下方法,我能够获得容器使用的内存:

  1. docker stats

    CONTAINER- 7827fe8127eb
    
    CPU - 0.00%
    
    MEM USAGE / LIMIT - 67.1MiB / 7.666GiB
    
    MEM % - 0.85%
    
    NET I/O - 76.4kB / 6.19kB
    
    BLOCK I/O - 42.7MB / 0B
    
    Run Code Online (Sandbox Code Playgroud)

    从以上统计信息中,我知道容器使用的内存为67.1 MB。

  2. 然后,我进入了容器,并试图找出正在运行的进程以及这些进程使用的内存。

    docker exec -i -t 7827fe8127eb /bin/bash
    top
    
    Run Code Online (Sandbox Code Playgroud)

    在此处输入图片说明

    现在,从“ docker stats”获得的统计数据表明容器内存为67 MB,但是该dotnet进程使用的内存是多少?

    "RES"列值是否提供过程内存?由于RES大小为92.70 MB,大于容器内存。

  3. 我使用Docker引擎API来获取容器统计信息。但是我不确切知道哪个属性指定了容器内存。

    "memory_stats": {
        "usage": 72302592,
        "max_usage": 84365312,
        "stats": {
            "active_anon": 47865856,
            "active_file": 6664192,
            "cache": 24477696,
            "dirty": 4096,
            "hierarchical_memory_limit": 9223372036854772000,
            "inactive_anon": 8450048,
            "inactive_file": 9318400,
            "mapped_file": 16236544, …
    Run Code Online (Sandbox Code Playgroud)

linux docker dockerfile docker-machine asp.net-core

7
推荐指数
1
解决办法
4247
查看次数

在.net核心的NLog中添加日志消息属性

NLog用于在.net核心中记录消息.

我加入NLogStartUp.cs,如下所示:

loggerFactory.AddNLog();
Run Code Online (Sandbox Code Playgroud)

要记录到文件,我使用以下方法:

logger.LogInformation("Message");
Run Code Online (Sandbox Code Playgroud)

我想在我的消息中添加自定义NLog事件属性.但是LogInformation()不允许我传递它.我怎样才能做到这一点?

error-logging nlog .net-core asp.net-core

6
推荐指数
1
解决办法
5371
查看次数

将.net核心应用程序部署到docker会发现"Microsoft.DotNet.Props"未找到错误

我有Windows 10 Home操作系统.我已经安装了Docker工具箱.我想将我的.net核心应用程序部署到Docker.我参考以下有用的文章创建了我的Docker文件:https: //stormpath.com/blog/tutorial-deploy-asp-net-core-on-linux-with-docker

我的docker文件如下:

FROM microsoft/dotnet:latest
COPY . /app
WORKDIR /app

RUN ["dotnet", "restore"]
RUN ["dotnet", "build"]

EXPOSE 5000/tcp
ENV ASPNETCORE_URLS http://*:5000

ENTRYPOINT ["dotnet", "run"]
Run Code Online (Sandbox Code Playgroud)

但是当我运行时,用于创建图像的docker命令,它给了我错误.

user@machine_name MINGW64 path to solution
$  docker build -t helloWorld:core .
Run Code Online (Sandbox Code Playgroud)

错误:

/app/Web.xproj(7,3): error MSB4019: The imported project "/usr/share/dotnet/sdk/1.0.0-rc4-004771/Microsoft/VisualStudio/v14.0/DotNet/Microsoft.DotNet.Props" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
The command 'dotnet restore' returned a non-zero code: 1
Run Code Online (Sandbox Code Playgroud)

有人可以指导,这里出了什么问题,因为我对Docker来说是全新的.

docker .net-core dockerfile docker-compose asp.net-core

4
推荐指数
1
解决办法
1568
查看次数

RegEx 替换 C# 中字符串中的特定字母

我需要一个正则表达式来用“?”替换所有出现的“l” 在字符串中。仅在以下情况下才应进行更换:

1)z之前有l

2)应该有一个数字或.之后l

例如:

1) 如果字符串是abc zl12,200,则输出应该是abc z?12,200

2) 如果字符串是zl.00,则输出应该是z?.00

3) 如果字符串是adbc zlopr,则输出应该是adbc zlopr

谢谢!

c# regex pattern-matching

2
推荐指数
1
解决办法
901
查看次数

在.net核心中打印支持

我的.net framework 4服务使用System.Drawing.Printing的PrintDocument类进行打印.

我怎样才能在.net核心中实现这一目标.我无法在.net核心中找到System.Drawing.Printing.

有人可以指导我吗?

asp.net-core-mvc .net-core asp.net-core asp.net-core-1.0 asp.net-core-webapi

2
推荐指数
3
解决办法
6339
查看次数