This repo and Docker container are deprecated. To run the agent in a Docker container, see the docs.
You may be looking for the Azure Pipelines hosted images, which are generated in the GitHub Actions Virtual Environments repo.
(Deprecated) VSTS agent Docker images
Home Page: https://hub.docker.com/r/microsoft/vsts-agent/
License: MIT License
This repo and Docker container are deprecated. To run the agent in a Docker container, see the docs.
You may be looking for the Azure Pipelines hosted images, which are generated in the GitHub Actions Virtual Environments repo.
We've been using Hosted Linux Preview images in the last months, in order to build Linux Containers for a Azure Container Service + Kubernetes cluster.
In the last days, we've noticed that our VSTS Build jobs are broken (find log below).
Al information found on the net talks about an old scenario where .NET Core was switching from .json to .csproj.
If we switch to Hosted VS 2017 the Restore command works properly, but we need to use Linux Based agents to build our images.
Thanks,
******************************************************************************
Starting: Restore
******************************************************************************
==============================================================================
Task : .NET Core
Description : Build, test and publish using dotnet core command-line.
Version : 1.0.2
Author : Microsoft Corporation
Help : [More Information](https://go.microsoft.com/fwlink/?linkid=832194)
==============================================================================
/usr/bin/dotnet restore /opt/vsts/work/1/s/Project1.sln --configfile ./CI-Nuget.config
Welcome to .NET Core!
---------------------
Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs.
Telemetry
--------------
The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include commandline arguments. The data is collected by Microsoft and shared with the community.
You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell.
You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry.
Configuring...
-------------------
A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once.
Decompressing 0%...100%
Expanding 0%...100%
error: Invalid input '/opt/vsts/work/1/s/Project1.sln'. The file type was not recognized.
Error: /usr/bin/dotnet failed with return code: 1
Dotnet command failed with non-zero exit code on the following projects : /opt/vsts/work/1/s/Project1.sln
Hello guys,
Not sure this is a bug but I'm having an issue while trying to cp my $(Build.ArtifactStagingDirectory) into a shared folder.
The shared folder is mounted within the container in /share/dropfolder with mount.cifs
My failling build cli task is the following one:
cp -R $(Build.ArtifactStagingDirectory)/* /share/dropfolder/EMEA/$(Build.DefinitionName)/$(Build.BuildNumber)/drop/
The distination folders are properly mkdired (with -p option) in a previous task but the cp crashes with the following error:
2017-02-10T17:53:33.0070120Z ##[section]Starting: Run cp
2017-02-10T17:53:33.1741620Z ==============================================================================
2017-02-10T17:53:33.1768660Z Task : Command Line
2017-02-10T17:53:33.1832410Z Description : Run a command line with arguments
2017-02-10T17:53:33.1859420Z Version : 1.1.2
2017-02-10T17:53:33.1922810Z Author : Microsoft Corporation
2017-02-10T17:53:33.1950240Z Help : [More Information](https://go.microsoft.com/fwlink/?LinkID=613735)
2017-02-10T17:53:33.2014820Z ==============================================================================
2017-02-10T17:53:33.9357640Z [command]/bin/cp -R /vsts/agent/_work/1/a/* /share/dropfolder/EMEA/dockertest/12361/drop/
2017-02-10T17:53:33.9387080Z /bin/cp: cannot stat '/vsts/agent/_work/1/a/*': No such file or directory
2017-02-10T17:53:33.9686390Z ##[error]/bin/cp failed with return code: 1
2017-02-10T17:53:33.9834060Z ##[error]/bin/cp failed with error: /bin/cp failed with return code: 1
2017-02-10T17:53:33.9958170Z ##[section]Finishing: Run cp
when I connect into the container and run the same command:
/bin/cp -R /vsts/agent/_work/1/a/* /share/dropfolder/EMEA/dockertest/12361/drop/
it works like a charm.
Any idea ?
When using the docker
image microsoft/vsts-agent:ubuntu-16.04-docker-17.03.0-ce-standard
as VSTS build agent on a linux machine, after my step to build the code files are not being outputted. I am using a docker container to do the build and have the output mapped to a volume on the container that is being used for the build.
I believe this is because the docker commands are be passed to the host through the volume map -v /var/run/docker.sock:/var/run/docker.sock
(as per the documentation). It seems the context in which the docker command runs, docker volume mounts are not mapping to the agent container.
I end up with errors like:
[command]/usr/local/bin/docker-compose -f /vsts/agent/_work/1/s/docker-compose.build.yml -p web-front up unit-tests
2017-04-14T01:37:56.4851300Z Starting webfront_unit-tests_1
2017-04-14T01:38:00.2561860Z Attaching to webfront_unit-tests_1
2017-04-14T01:38:00.2586250Z �[36munit-tests_1 |�[0m MSBUILD : error MSB1009: Project file does not exist.
2017-04-14T01:38:00.2618300Z �[36munit-tests_1 |�[0m Switch: ./WebFront.Tests/WebFront.Tests.csproj
2017-04-14T01:38:01.4295840Z �[36mwebfront_unit-tests_1 exited with code 1
2017-04-14T01:38:01.5604130Z ##[section]Finishing: build-test
2017-04-14T01:38:01.6217030Z ##[section]Starting: build image
and
Step 4/5 : ENTRYPOINT dotnet WebFront.dll
2017-04-14T01:38:03.0085400Z ---> Using cache
2017-04-14T01:38:03.0100830Z ---> 9fce6802ad0c
2017-04-14T01:38:03.0114590Z Step 5/5 : COPY ./obj/Docker/publish/ .
2017-04-14T01:38:03.0135350Z Service 'build-image' failed to build: lstat obj/Docker/publish/: no such file or directory
This seems similar to #13.
I was able to make it work by mapping the agent working folder /vsts/code/_work
when booting the agent:
docker run \
-e VSTS_ACCOUNT=<account> \
-e VSTS_TOKEN=<token> \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/vsts:/var/vsts \
-v /vsts/agent/_work:/vsts/agent/_work
-d microsoft/vsts-agent:ubuntu-16.04-docker-17.03.0-ce-standard
I am not sure if this is the best way to make it work but the build did complete. If this is the best way, this doesn't work out of the box as the start.sh
script doesn't support mounting the /vsts/agent/_work
folder. When the start.sh script starts it check and removes the /vsts/agent/folder
and everything under it:
#snippet of start.sh
if [ -e /vsts/agent -a ! -e /vsts/agent/.agent ]; then
rm -rf /vsts/agent
fi
which causes the following error when the docker container starts:
rm: cannot remove '/vsts/agent/_work': Device or resource busy
I was able to get it to work by modify the start.sh
script. A working example is: https://github.com/jsturtevant/vsts-agent-docker-temp-fix. I will submit a PR for the change though again not sure if this is the best way to solve the issue.
I have the docker standard image. It states that the .NET Core sdk is instaled. But I can not run and dotnet commands...I want to run the dotnet restore and dotnet build. But not sure which VSTS Tasks to use? Using the new VSTS Build views.
Any hints?
When i start a docker agent, targeting visualstudio.com, the agent registers itself with my private agent pool.
When i queue a new build, I get the following error:
No registered agents found in the selected queue with the following capabilities: msbuild, visualstudio, DotNetFramework, vstest. Use a different queue.
docker run -e VSTS_ACCOUNT=[MyProject]-e TFS_HOST=[MyHost] -e VSTS_POOL=[MyPool] -e VSTS_TOKEN=[MyToken] -it microsoft/vsts-agent
Output:
Determining matching VSTS agent...
Downloading and installing VSTS agent...
>> Connect:
Connecting to server ...
>> Register Agent:
Scanning for tool capabilities.
Connecting to the server.
Successfully added the agent
Testing agent connection.
2018-01-23 08:57:37Z: Settings Saved.
Scanning for tool capabilities.
Connecting to the server.
2018-01-23 08:57:39Z: Listening for Jobs
Googling this error, it appears VisualStudio is not installed on the image.
Any possible solutions on how to fix this in Docker?
Hi,
i've used the dockerfiles for windows in the past with success, but currently when I try to rebuild it, it fails on the step installing visual studio 2017 enterprise (chocolatey fails to install it with error code 255).
I've tried to download the vs_enterprise.exe from aka.ms directly and try to install that, but no matter what, I can't get it installed. Anybody have a suggestion?
The VSTS Agents should include Powershell to be able to run Powershell commands from VSO builds (though their powershell task is currently broken -- looking for powershell instead of pwsh).
Hi,
I am trying to get a docker vsts agent running and get the following error message:
>> End User License Agreements:
Building sources from a TFVC repository requires accepting the Team Explorer Everywhere End User License Agreement. This step is not required for building sources from Git repositories.
A copy of the Team Explorer Everywhere license agreement can be found at:
/vsts/agent/externals/tee/license.html
>> Connect:
Connecting to server ...
An error occurred while sending the request.
The command I am using is:
docker run -it --name="agent-01" --network="bridge" -e TFS_HOST="TFSHOST" -e VSTS_TOKEN="STRENG_GEHEIM" -v /var/run/docker.sock:/var/run/docker.sock microsoft/vsts-agent:ubuntu-16.04-tfs-2017-docker-17.06.0-ce-standard
Of course the TOKEN in the command above is beeing replaced by a valid token and TFSHOST is beeing replaced by a resolveable hostname.
Things I have checked:
What am I doing wrong, what did I miss?
Thanks
Hi all!
I ran almost all containers for VSTS but they all give the error below as I start the container and what error I get.
Interestingly, when I connect to the container where the slit is.
I have Azure Container Registry can be the problem? it may be that you need to do? for example to authorize?
Thank you advance!
docker run
-e VSTS_ACCOUNT=account
-e VSTS_TOKEN=token
-it microsoft/vsts-agent:ubuntu-16.04-docker-17.06.0-ce
Starting: Build an image for Bot
.........................................................................................................
Task : Docker
Description : Build, tag, push, or run Docker images, or run a Docker command. Task can be used with Docker or Azure Container registry.
Version : 0.3.2
Author : Microsoft Corporation
Help : More Information
.........................................................................................................
Unhandled: Failed which: Not found docker: null
.........................................................................................................
Finishing: Build an image for Bot
Hello,
I noticed that the docker image is the the latest stable(currently Node 9), but the current LTS is Node 8.
This causes problem when using NPM to install package like bcrypt, where it is compiled to the specific node version.
I am wondering, shouldn't the docker image use the LTS version node since in most cases this is what the majority of people will use in production?
If not, is there a way to work around this? The only solution I have found is to use NPM to remove and add on the actual production server after the deploy.
Regards,
enabling "checkout files from LFS" via VSTS build definition settings causes a failure in the build
Git-lfs installation failed with exit code: 1
tried to install git-lfs by manually ssh-ing into the node where the vsts agent is hosted, via the following commands
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
apt install git-lfs
this installed git-lfs successfully but the build still fails as the build agents run in a different environment
i have already opened an issue:
microsoft/azure-pipelines-agent#943
should I copy here ?
I have a docker cluster behind a VPN. And also I have a TFS on visualstudio.com, I have downloaded TFS agent container, and want to connect to our TFS but it cannot connect with an alarm of:
Determining matching VSTS agent...
Downloading and installing VSTS agent...
curl: (35) gnutls_handshake() failed: Error in the pull function.
gzip: stdin: unexpected end of file
tar: Child returned status 1
tar: Error is not recoverable: exiting now
It can ping google.But cannot ping public TFS. I would consider this as a network issue but nginx container was pulled and started with success.
docker run \
-e VSTS_ACCOUNT= xxx \
-e TFS_HOST= yyy \
-e VSTS_TOKEN= zzz \
-it microsoft/vsts-agent
also tried this:
docker run \
-e VSTS_ACCOUNT= xxx \
-e VSTS_AGENT='$(hostname)-agent'\
-e VSTS_TOKEN= yyy \
-e TFS_URL= zzz \
-e VSTS_POOL= eee \
-e VSTS_WORK='/var/vsts/$VSTS_AGENT' \
-v /var/vsts:/var/vsts \
-it microsoft/vsts-agent:ubuntu-14.04
Although it is behind VPN, I can access the repo from browser btw.
My team uses CMake in our builds. We would love to use Hosted Linux Agent preview for our continuous integration builds in the cloud, but currently the images have CMake on them, so we have to setup a local Linux box in the default queue.
Is it possible to update the docker images to install CMake (the same version that's support in the hosted Windows machines)?
Hello,
I am working on a Pull request with some more platforms. I am working on CentOS and Windows Server images at the moment.
In preparation for this I want to rearrange some files and folders. Should I provide a single PR with all changes or should I provide a PR with this Folder changes first?
I hope this is the right place to ask.
Greetings, KirK
When I tried to create the image it got this error:
Step 5/6 : COPY ./Start.* ./
No source files were specified
Seems that the copy is not working to copy my context to the image.
I'm trying to use this to run some docker compose commands, but I keep coming up against a problem where it cannot find a module.
I'm running on an Ubuntu 16.04 host, running the agent as
exec docker run \
-d \
--restart always \
--name docker-build-agent \
-e VSTS_ACCOUNT=xxxx\
-e VSTS_TOKEN=xxxx \
-e VSTS_AGENT=docker-agent \
-e VSTS_POOL=docker \
-v /var/run/docker.sock:/var/run/docker.sock \
microsoft/vsts-agent:ubuntu-16.04-docker-1.13.1
When running, I see the following issues (Cannot find module './dockerComposeCommand')
******************************************************************************
Starting: Run a Docker Compose command
******************************************************************************
==============================================================================
Task : Docker Compose
Description : Build, push or run multi-container Docker applications
Version : 0.3.7
Author : Microsoft Corporation
Help : [More Information](http://aka.ms/dockertoolsforvsts)
==============================================================================
/usr/local/bin/docker login -u ******** -p ******** skcontainers.azurecr.io
Login Succeeded
/usr/local/bin/docker logout skcontainers.azurecr.io
Removing login credentials for skcontainers.azurecr.io
Cannot find module './dockerComposeCommand'
******************************************************************************
Finishing: Run a Docker Compose command
******************************************************************************
******************************************************************************
This happens no matter the command I create.
I get this error running the VS2015 and VS2017 standard Docker images
Step 1/23 : FROM microsoft/vsts-agent:windows-10.0.14393
manifest for microsoft/vsts-agent:windows-10.0.14393 not found
We are using the TFS on prem container images and currently have the problem that sometimes when the container gets stopped, the agent registration is not removed. Therefore after a restart of the container, the container exits with the information
agent_1 | Cannot configure the agent because it is already configured. To reconfigure the agent, run 'config.cmd remove' or './config.sh remove' first.
The only possibility to bring it up again, is to completely remove the container and create a new one.
Hi,
I just updated our build containers to the latest version of ubuntu-16.04-docker-17.06.0-ce-standard.
If I'm using the agent with VSTS, the following error occurs when building a docker image:
Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?
If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.
/usr/local/bin/docker-compose failed with return code: 1
What changed so far? Did I miss something? I only updated the container, nothing else.
Thanks
Marc
In my company we buy the Team Foundation Server(TFS), we can use this images to create agents with docker??
Hi,
I try to publish an artifact from an Linux agent () into an mounted smb foulder and get this error message:
Cannot publish artifacts from OSX or Linux to a file share. You can change 'Artifact Type' to 'Server', use Windows, or use the 'Copy Files', 'Copy Files Over SSH', or 'FTP Upload' task.
The copy works fine but how I can use this files than after that in the release definition? I get the error there was nothing published
I was not able to get these images to work successfully with our on-premise TFS server, but I have a solution.
Our server is not using https, so trying to authenticate with a PAT token will fail. The solution is the use Negotiate authentication. Here is a part of how I modified the start.sh file in my container image:
./bin/Agent.Listener configure --unattended
--agent "${VSTS_AGENT:-$(hostname)}"
--url "$TFS_URL"
--auth Negotiate
--username "$TFS_USERNAME"
--password "$TFS_PASSWORD"
--pool "${VSTS_POOL:-Default}"
--work "${VSTS_WORK:-_work}"
--replace & wait $!
I would make a pull request to make this change, but I am unsure of some things. This looks like it needs to be made in many files, and I am not sure which ones should be changed. Also, I think the proper solution should support either using the VSTS_TOKEN variable or the TFS_USERNAME/TFS_PASSWORD combo. My solution only works with the TFS_USERNAME/TFS_PASSWORD. Finally, I wasn't sure of the best way to support credentials in a file for this scenario.
Should I attempt to make a PR for this or let you guys make these changes?
This enables version 2.1 amongst other things.
?1h=
>> End User License Agreements:
Building sources from a TFVC repository requires accepting the Team Explorer Everywhere End User License Agreement. This step is not required for building sources from Git repositories.
A copy of the Team Explorer Everywhere license agreement can be found at:
/vsts/agent/externals/tee/license.html
>> Connect:
Invalid configuration provided for username. Terminating unattended configuration.
Hi
Really digging the upgrades to [VSTS+Docker integration] and [Azure+Container Registry] that have happened in the last 6 months. Its so much easier to get going.
Unfortunately I have upgraded all my images to multi-stage build, and I balk at having to re-provision my own agent host.
The new verison of docker has been out for a while, is there an ETA on the new agent container being created?
https://docs.docker.com/release-notes/docker-ce/#17060-ce-2017-06-28
As per the release cycle announcement, this version should be around for 3 months.
https://blog.docker.com/2017/03/docker-enterprise-edition
Also how long till the Linux Hosted Preview agent pool within VSTS is updated with 17.06?
Cheers
Anybody seen this one, with the latest ubuntu-16.04 image?
sudo docker run -e VSTS_ACCOUNT="myaccount" -e VSTS_TOKEN="mytoken" -e VSTS_AGENT="docker" -v /var/run/docker.sock:/var/run/docker.sock -it microsoft/vsts-agent:ubuntu-16.04
The agent gets connected to our vsts but when a build is triggered we get that message (Not found docker: null).
Thanks for any and all help.
Corey
Hi,
Today I use agent on DC/OS Azure but when I tried to build with git version this error failed the build
******************************************************************************
Starting: GitVersion
******************************************************************************
==============================================================================
Task : GitVersion Task
Description : Easy Semantic Versioning (http://semver.org) for projects using Git
Version : 3.6.5
Author : GitVersion Contributors
Help : See the [documentation](http://gitversion.readthedocs.org/en/latest/) for help
==============================================================================
Supported task execution handler not found. Supported handlers: Node
******************************************************************************
Finishing: GitVersion
******************************************************************************
Can you add git version support on vsts agent image ?
Thank you
Using ubuntu-16.04-standard
, at this moment https://$VSTS_ACCOUNT.visualstudio.com/_apis/distributedtask/packages/agent?platform=ubuntu.16.04-x64
returns largest version 2.124.0 (https://github.com/Microsoft/vsts-agent/releases/download/v2.124.0/vsts-agent-ubuntu.16.04-x64-2.124.0.tar.gz
), so this is what start.sh
will download and install when the container is started.
When an agent update is triggered (in our case, this appears to happen when we run a yaml build), we get the following:
Agent update in progress, do not shutdown agent.
Downloading 2.126.0 agent
Waiting for current job finish running.
Generate and execute update script.
Agent will exit shortly for update, should back online within 10 seconds.
/vsts/agent/_work/_update.sh: line 31: ping: command not found
/vsts/agent/_work/_update.sh: line 31: ping: command not found
/vsts/agent/_work/_update.sh: line 31: ping: command not found
[...]
After many more identical messages the container eventually exists.
Looking at the agent update script for Linux, the ping
program is used in two places, but this is not available in the mentioned image.
Adding ping
(apt-get install iputils-ping
) only marginally improves things, as the container will simply exit after the Agent will exit shortly for update
message. Restarting the agent will download version 2.124.0 again, so effectively running yaml builds in docker agents does not work.
I'm not sure if the changed agent binary URLs have something to do with this (not using the latest version from the start that is).
We have tests running on the hosted linux preview agents that fail because timezones are missing.
When running a small test on the following docker images I get these results;
docker exec -it microsoft/vsts-agent:ubuntu-16.04-docker-1.12.1-standard
root@c7bad853c997:/var/temp# cat Program.cs
using System;
namespace temp
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Timezone test started.");
var timezones = TimeZoneInfo.GetSystemTimeZones();
foreach (var timeZoneInfo in timezones)
Console.WriteLine(timeZoneInfo.Id);
Console.WriteLine("Timezone test done.");
}
}
}
root@c7bad853c997:/var/temp# dotnet run
Timezone test started.
Timezone test done.
root@c7bad853c997:/var/temp# tzselect
/usr/bin/tzselect: line 180: /usr/share/zoneinfo/iso3166.tab: No such file or directory
/usr/bin/tzselect: time zone files are not set up correctly
root@c7bad853c997:/var/temp#
Hi,
Java builds are not working for the image "microsoft/vsts-agent:ubuntu-16.04-docker-1.11.2-standard".
ERROR:
JAVA_HOME is set to an invalid (not existing) directory: /usr/lib/jvm/default-java
Please set the JAVA_HOME variable in your environment to match the location of your Java installation.
Reason:
Wrong ENV JAVA_HOME in DockerFile for image "microsoft/vsts-agent:ubuntu-16.04-docker-1.11.2-standard"
The correct path (working for me) to java is /usr/lib/jvm/java-8-openjdk-amd64
instead of /usr/lib/jvm/default-java
Workarounds:
a) Set JAVA_HOME at docker run:
docker run \
-e VSTS_ACCOUNT=<name> \
-e VSTS_TOKEN=<token> \
-e VSTS_POOL=<pool> \
-e JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 \
-v /var/run/docker.sock:/var/run/docker.sock \
-it microsoft/vsts-agent:ubuntu-16.04-docker-1.11.2-standard
OR
b) Use an own Dockerfile
FROM microsoft/vsts-agent:ubuntu-16.04-docker-1.11.2-standard
# Fix issue with JAVA_HOME
ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
Are there plans to an image with MSBuild capabilities?
This requires a Windows container ofcourse.
Per https://github.com/Microsoft/vsts-agent-docker/blob/master/ubuntu/16.04/docker/1.12.1/standard/Dockerfile it looks like you only support docker version 12.
When is support for 17 planned for, especially looking for multistage build support
Now,I use ubuntu-16.04-tfs-2017-docker-17.03.0-ce-standard for build agent, very good, thanks!
But I need Nuget、MSBUILD、Webdeploy, could you tell me how can I include this in the image?
I guess this would be more of an improvement to tighten security. Currently if I run as root, that agent can potentially hack into the system or have access to all other containers running on the same engine.
It would be great if I could point TFS or VSTS at an image repo and a container host (Server 2016) and it could manage the lifetime for me. There isn't really a need to keep the image up and running all the time. When a build request hits the pool can start a docker image, do the build, save the artifacts, then rmi the image. People can mutate the build environment as they need as part of the build and the changes just get swept away at the end.
The Hosted Linux image has no subversion client. This prevents subversion builds from just working with Hosted Linux.
I'm running the vsts-agent with the command:
docker run
--name vsts-agent -d
-e VSTS_ACCOUNT=<accont>
-e VSTS_TOKEN=<token>
-e VSTS_AGENT=vsts-agent-azure
-e VSTS_POOL=Azure
-it microsoft/vsts-agent:ubuntu-16.04-docker-1.12.1-standard
but when queue a new build, I'm getting the error, that there is no maven capabilitie. Even visualstudio or azureps is not found.
But the Docker description says, Java tools (ant, gradle, maven) and other capabilities should be installed
Since Windows Server 2016 is out, are there any plans for releasing images for Windows Containers ?
Using vsts-agent:ubuntu-16.04-docker-1.12.1-standard.
When run via
docker run --restart=always <blah> -d microsoft/vsts-agent:ubuntu-16.04-docker-1.12.1-standard
.
and if the docker service is restarted, the vsts-agent-docker container does not recover from the "Restarting (xx minutes)" . This is causing perception issues that this is not reliable and is preventing adoption of this for our non .net dev.
After doing some research, is this because of improper handling of SIGTERM? It seems that a fork of this
vsts-agent-docker here advertises:
graceful restarts in case of crashes (e.g. with docker run -d --restart=always)
and
correct handling of SIGTERM
I am unable to try this as it is not a standard version that I require with the Java toolchain.
The TFS images are targeted on TFS users not VSTS users and the expectation to configure the agent will be the URL of your TFS server instead of your VSTS account.
Found this docker file in this repo:
windows/servercore/10.0.14393/standard/VS2017/Dockerfile
Which seems to use this as the base image:
microsoft/vsts-agent:windows-10.0.14393
However if I do docker pull microsoft/vsts-agent:windows-10.0.14393 I get this:
Error response from daemon: manifest for microsoft/vsts-agent:windows-10.0.14393 not found
How to use that docker file?
I am using this image microsoft/vsts-agent:ubuntu-16.04-docker-1.11.2
to use docker in docker.
Docker cli is working but when i try to run a docker command happens this error.
/usr/local/bin/docker exec -it base-php-fpm ls
cannot enable tty mode on non tty input
without t option works but i cant get stdout.
How can i enable tty?
thx
Is is possible to run the agent as a docker service?
I tried to following without success.
docker service create \
--name=vsts-agent \
--constraint=node.role==manager \
--env VSTS_ACCOUNT=<account> \
--env VSTS_AGENT=<agent> \
--env VSTS_POOL=<pool> \
--env VSTS_TOKEN=<token> \
--env VSTS_WORK='/var/vsts/$VSTS_AGENT' \
--mount=type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock \
--mount=type=bind,src=/var/vsts,dst=/var/vsts \
--tty microsoft/vsts-agent:latest
I noticed that a version for Windows has landed in this repo, so I tried to built it myself. However, building the standard image seems to hang after first wave of Chocolatey packages have been installed. Is that a known issue? Anything I can help with? Would love to give this a try.
I wanted to use the ubuntu-16.04-docker-1.12.1-standard image to run my .net core build. I am using VS2017 RC for development. The build output shows that that a older version of dotnet is installed.
/usr/bin/dotnet --version
1.0.0-preview2-003131
Task : Command Line
Description : Run a command line with arguments
Version : 1.1.2
Author : Microsoft Corporation
Help : More Information
/usr/bin/dotnet restore xxx.sln
error: Invalid input 'xxx.sln'. The file type was not recognized.
/usr/bin/dotnet failed with return code: 1
/usr/bin/dotnet failed with error: /usr/bin/dotnet failed with return code:
With TFS 2018 being RTM a agent image for it should be available
We just install TFS2017 on premise version 15.105.25910.0.
I'm trying to run an agent to a container by running the following command:
docker run -e TFS_HOST=tfs.mycompany.com -e TFS_URL=https://tfs.mycompany.com -e VSTS_TOKEN=************************** -e VSTS_AGENT=%hostname% -e VSTS_WORK=_work -e VSTS_POOL=docker -it microsoft/vsts-agent:ubuntu-16.04-tfs-2017
And I'm getting this output:
End User License Agreements:
Building sources from a TFVC repository requires accepting the Team Explorer Everywhere End User License Agreement. This step is not required for building sources from Git repositories.
A copy of the Team Explorer Everywhere license agreement can be found at:
/vsts/agent/externals/tee/license.html
Connect:
Invalid configuration provided for username. Terminating unattended configuration.
I tried also running an agent from a container with an account created on VS online, and it works fine:
docker run -e VSTS_ACCOUNT=enformat -e VSTS_TOKEN=***************************** -e VSTS_POOL=docker -it microsoft/vsts-agent:ubuntu-16.04
Is there any problem with start.sh script ?
Do we need to configure custom authentication on our servers (anonymous authentication is enabled) ? Right now we've got agents installed on premise and they are working fine.
What do I have to provide for VSTS_ACCOUNT and VSTS_TOKEN on an onpremise installation? Where can I provide where the TFS server is located? (e.g. http://192.168...:8080/tfs)
When using the vsts-agent-docker
in combination with an on premise TFS 2017 server using the TFS_HOST
environment variable produces a http url. As mentioned in vsts-agent Issue 695 the authentication with a PAT token requires a https connection.
I am aware that I can set the url using the TFS_URL
environment variable to configure the correct https url.
Anyway it would make sense to change the url build from the TFS_HOST
environment variable a https url as it required anyway.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.